OK335x mksd.sh hacking
#! /bin/sh
# mk3PartSDCard.sh v0.
# Licensed under terms of GPLv2 # 参考文档:
# . sfidsk创建可启动分区问题
# http://segmentfault.com/a/1190000002493628
# . sfdisk 中文手册
# http://blog.csdn.net/hnmsky/article/details/7650964
# . linux sfdisk partition
# http://blog.csdn.net/shell_albert/article/details/8425530
# . How to Make Partition SD Card
# http://processors.wiki.ti.com/index.php/How_to_Make_3_Partition_SD_Card if [ $# -ne ]; then
echo "USAGE:"
echo " $0 <device node>"
exit -;
fi # 获取SD卡设备节点,并擦除分区表
DRIVE=$
dd if=/dev/zero of=$DRIVE bs= count= # 获取SD卡大小,并在terminal中显示字节大小
SIZE=`fdisk -l $DRIVE | grep Disk | awk '{print $5}'`
echo DISK SIZE - $SIZE bytes # 计算磁柱数
# 每一个柱面的大小为255**=,, Bytes
CYLINDERS=`echo $SIZE/// | bc` # Usage:
# sfdisk [options] <device> [...]
#
# Options:
# -s, --show-size list size of a partition
# -c, --id change or print partition Id
# --change-id change Id
# --print-id print Id
# -l, --list list partitions of each device
# -d, --dump idem, but in a format suitable for later input
# -i, --increment number cylinders etc. from instead of from
# -u, --unit <letter> units to be used; <letter> can be one of
# S (sectors), C (cylinders), B (blocks), or M (MB)
# -, --one-only reserved option that does nothing currently
# -T, --list-types list the known partition types
# -D, --DOS for DOS-compatibility: waste a little space
# -E, --DOS-extended DOS extended partition compatibility
# -R, --re-read make the kernel reread the partition table
# -N <number> change only the partition with this <number>
# -n do not actually write to disk
# -O <file> save the sectors that will be overwritten to <file>
# -I <file> restore sectors from <file>
# -V, --verify check that the listed partitions are reasonable
# -v, --version display version information and exit
# -h, --help display this help text and exit
#
# Dangerous options:
# -f, --force disable all consistency checking
# --no-reread do not check whether the partition is in use
# -q, --quiet suppress warning messages
# -L, --Linux do not complain about things irrelevant for Linux
# -g, --show-geometry print the kernel's idea of the geometry
# -G, --show-pt-geometry print geometry guessed from the partition table
# -A, --activate[=<device>] activate bootable flag
# -U, --unhide[=<dev>] set partition unhidden
# -x, --show-extended also list extended partitions in the output,
# or expect descriptors for them in the input
# --leave-last do not allocate the last cylinder
# --IBM same as --leave-last
# --in-order partitions are in order
# --not-in-order partitions are not in order
# --inside-outer all logicals inside outermost extended
# --not-inside-outer not all logicals inside outermost extended
# --nested every partition is disjoint from all others
# --chained like nested, but extended partitions may lie outside
# --onesector partitions are mutually disjoint
#
# Override the detected geometry using:
# -C, --cylinders <number> set the number of cylinders to use
# -H, --heads <number> set the number of heads to use
# -S, --sectors <number> set the number of sectors to use
# # sfdisk的-D参数指定与DOS兼容,并自动在每个分区前预留空间,以存放MBR(Master Boot Record);
#
# <start>, <size>, <id>, <bootable>
#
# bootable 可以指定为[*|-]格式,默认值是"-"也就是没有可引导标记。
# 这个标记仅对DOS有意义:DOS会给带有可引导标记的主分区分配 C: 盘符
#
# id 应该以无"0x"前缀的格式给出其十六进制值,或者[E|S|L]简写字母:
# L()是默认值;
# S(,LINUX_SWAP);
# E(,扩展分区)。
#
# 第一行分区描述,,0x0C,* 自动分配起始柱面,数量为9,分区ID为0x0C(表示FAT32分区),<bootable>为*, 表示可启动分区。
# 第二行分区描述10,,,- 同样自动分配起柱面,数量为115,其它为默认。
# 第三行分区描述126,,,- 同样自动分配起柱面,剩下所有的数量,其它为默认。
sfdisk -D -H -S -C $CYLINDERS $DRIVE << EOF
,,0x0C,*
,,,-
,,,-
EOF # 这里可以得到一张FAT32分区的SD卡,我有时候我们就只需要一张这样的卡
# sfdisk -D -H -S -C $CYLINDERS $DRIVE << EOF
# ,,0x0C,*
# EOF # 格式化各个分区,格式化完卸载对应的分区
mkfs.vfat -F -n "boot" ${DRIVE}
umount ${DRIVE}
mkfs.ext3 -L "rootfs" ${DRIVE}
umount ${DRIVE}
mkfs.ext3 -L "START_HERE" ${DRIVE}
OK335x mksd.sh hacking的更多相关文章
- Woobuntu woobuntu_build.sh hacking
# Woobuntu woobuntu_build.sh hacking # 说明: # 有时候因为一些需求,我们需要定制一些系统,包括Ubuntu系统,于是 # 我们自然需要知道如何去解包一个Ubu ...
- OK335xS psplash make-image-header.sh hacking
/***************************************************************************** * OK335xS psplash mak ...
- ti processor sdk linux am335x evm setup.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm setup.sh hacking # 说明: # 本文主要对TI的sdk中的setup.sh脚本进行解读 ...
- ti processor sdk linux am335x evm /bin/setup-host-check.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-host-check.sh hacking # 说明: # 本文主要对TI的sdk ...
- ti processor sdk linux am335x evm /bin/create-sdcard.sh hacking
#!/bin/bash # # ti processor sdk linux am335x evm /bin/create-sdcard.sh hacking # 说明: # 本文主要对TI的sdk中 ...
- ti processor sdk linux am335x evm /bin/unshallow-repositories.sh hacking
#!/bin/bash # # ti processor sdk linux am335x evm /bin/unshallow-repositories.sh hacking # 说明: # 本文主 ...
- ti processor sdk linux am335x evm /bin/setup-package-install.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-package-install.sh hacking # 说明: # 本文主要对T ...
- ti processor sdk linux am335x evm /bin/setup-uboot-env.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-uboot-env.sh hacking # 说明: # 本文主要对TI的sdk中 ...
- ti processor sdk linux am335x evm /bin/setup-minicom.sh hacking
#!/bin/sh # # ti processor sdk linux am335x evm /bin/setup-minicom.sh hacking # 说明: # 本文主要对TI的sdk中的s ...
随机推荐
- RDB
在运行情况下, Redis 以数据结构的形式将数据维持在内存中, 为了让这些数据在 Redis 重启之后仍然可用, Redis 分别提供了 RDB 和 AOF 两种持久化模式. 在 Redis 运行时 ...
- tornado之WebSocket
WebSocket WebSocket是HTML5规范中新提出的客户端-服务器通讯协议,协议本身使用新的ws://URL格式. WebSocket 是独立的.创建在 TCP 上的协议,和 HTTP 的 ...
- 分析ReentrantLock的实现原理
http://www.jianshu.com/p/fe027772e156 什么是AQS AQS即是AbstractQueuedSynchronizer,一个用来构建锁和同步工具的框架,包括常用的Re ...
- sonar总结--
maven的setting.xml 配置 https://www.cnblogs.com/javawebsoa/p/3206504.html
- 今天 学习用到的一些知识(properties 读取,js 删除元素)
1.properties文件位置的关系:当properties文件放在src目录下时,编译会自动把src里的文件放到bin文件平级,因此可用this.getClass.getClassLoader.g ...
- 对dataframe中某一列进行计数
本来是一项很简单的任务...但很容易忘记搞混..所以还是记录一下 方法一: df['col'].value_counts() 方法二: groups = df.groupby('col') group ...
- 永久以管理员身份运行cmd
系统:win7 1,下图输入 cmd,找到cmd 2,发送到桌面快捷方式 3,在桌面上的cmd,右键,属性 点高级,进入后,勾上 管理员.
- Svn Replacement For Git Stash
svn 实现git stash类似的功能 % svn diff > WorkInProgress.txt % svn revert -R . <make changes> % svn ...
- C++(三十) — this 指针
1.如何区分多个对象调用同一个类函数? 类外部访问类成员,必须用对象来调用.一个类的所有对象在调用的成员函数,都执行同一段代码,那成员函数如何区分属于哪个对象呢? 在对象调用成员函数时,除接收实参外, ...
- 《深入理解mybatis原理2》 Mybatis初始化机制详解
<深入理解mybatis原理> Mybatis初始化机制详解 对于任何框架而言,在使用前都要进行一系列的初始化,MyBatis也不例外.本章将通过以下几点详细介绍MyBatis的初始化过程 ...