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 ...
随机推荐
- 2019 google kickstart round A
第一题: n个人,每个人有一个对应的技能值s,现在要从n个人中选出p个人,使得他们的技能值相同. 显然,如果存在p个人的技能值是相同的,输出0就可以了.如果不存在,就要找出p个人,对他们进行训练,治他 ...
- 程序员清理xcode垃圾命令
xcrun simctl list devices xcrun simctl delete unavailable
- [Network Architecture]Mask R-CNN论文解析(转)
前言 最近有一个idea需要去验证,比较忙,看完Mask R-CNN论文了,最近会去研究Mask R-CNN的代码,论文解析转载网上的两篇博客 技术挖掘者 remanented 文章1 论文题目:Ma ...
- Objective C Protocol implementation
protocol 类似于接口,可以实现函数的回调 @protocol MyDelegate<NSObject> -(void)myCallbackFunction; @end //Call ...
- docker-machine windows
windows 官方使用 https://docs.docker.com/machine/drivers/hyper-v/ 坑点是 docker-machine create -d hyperv m ...
- Android -- 多线程下载, 断点下载
1. 原理图 2. 示例代码 需要权限 <uses-permission android:name="android.permission.INTERNET"/> &l ...
- JavaScript高级程序设计-读书笔记(7)
第22章 高级技巧 1.高级函数 (1)安全的类型检测 在任何值上调用Object原生的toString()方法,都会返回一个[object NativeConstructorName]格式的字符串. ...
- hiho 1318 非法二进制数 dp
#1318 : 非法二进制数 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 如果一个二进制数包含连续的两个1,我们就称这个二进制数是非法的. 小Hi想知道在所有 n 位 ...
- Nginx 从0开始学
作为一个 nginx 的初学者记录一下从零起步的点滴. 基本概念 Nginx 最常的用途是提供反向代理服务,那么什么反向代理呢?正向代理相信很多大陆同胞都在这片神奇的土地上用过了,原理大致如下图: 代 ...
- 'webpack' 不是内部或外部命令解决办法以及npm配置
昨天在笔记本上安装webpack,按照教程下来,使用webpack命令行,报错:'webpack' 不是内部或外部命令,也不是可运行的程序 或批处理文件.网上有大量的配置方法与解决办法,找了好久才成功 ...