#!/bin/sh # autoburn eMMC hacking # 说明: # 看一下富林的自动烧录的执行脚本原理。 # # 2017-8-9 深圳 龙华樟坑村 曾剑锋 # 创建sd卡挂载目录 if [ ! -e /sd ];then echo "create sd dir" mkdir /sd fi # 创建eMMC挂载目录 if [ ! -e /mmc ];then echo "create mmc dir" mkdir /mmc fi # 卸载可能被挂载的分区 umount /media/* # 对mmcblk1进行分区 echo "Star make partition" #make partition dd if=/dev/zero of=/dev/mmcblk1 count=10240 bs=10240 fdisk /dev/mmcblk1 <<EOF o n p 1 +50M n p 2 t 1 e a 1 w EOF sync sleep 2 # 格式化分区 mkfs.vfat -F 16 /dev/mmcblk1p1 mkfs.ext2 /dev/mmcblk1p2 <<EOF y EOF # 挂载boot分区,拷贝分区内容,卸载分区 mount /dev/mmcblk0p1 /sd mount /dev/mmcblk1p1 /mmc cp /sd/* /mmc/ cp /mmc/uEnv_emmc.txt /mmc/uEnv.txt -arf umount /sd umount /mmc sync sync # 挂载rootfs分区,拷贝分区内容,卸载分区 mount /dev/mmcblk1p2 /mmc mount /dev/mmcblk0p2 /sd #tar -xvf /rootfs.tar -C /mmc cp /sd/* /mmc/ -arf if [ -e /mmc/autoburn.sh ];then rm /mmc/autoburn.sh fi cp /mmc/usr/share/lighttpd/json.use /mmc/usr/share/lighttpd/json.txt -rf rm /mmc/etc/pointercal -rf sync umount /mmc umount /sd sync echo "burn the new system over..."