DRIVE=$1
dd if=/dev/zero of=$DRIVE bs=1024 count=1024 &>/dev/null
SIZE=`fdisk -l $DRIVE | grep Disk | awk '{print $5}'`
echo DISK SIZE - $SIZE bytes
CYLINDERS=`echo $SIZE/255/63/512 | bc`
echo CYLINDERS - $CYLINDERS
{
echo ,9,0x0C,*
#echo ,$(expr $CYLINDERS / 2),,-
echo 10,110,,-
echo 110,160,0x0C,-
echo ,,,-
} | sfdisk -D -H 255 -S 63 -C $CYLINDERS $DRIVE &> /dev/null
echo "[Making filesystems...]"
mkfs.vfat -F 32 -n boot "$1"1 &> /dev/null
mkfs.ext3 -L rootfs "$1"2 &> /dev/null
mkfs.vfat -F 32 -n data "$1"3 &> /dev/null
mkswap "$1"4 &> /dev/null
此script一開始先format SD card
接下來算出磁柱數
我將反紅部份是我修改的code
sfdisk format的語法為 開始磁柱,磁柱數,ID,"*"為開機磁區
我將第4磁區設為swap作為休眠時的其中一個mothed
沒有留言:
張貼留言