u盘挂载完成(及 mount /dev/sda /mnt )后,
#mkdir /tmp/cproot
#mount --bind //tmp/cproot
#tar -C /tmp/cproot-cvf - . | tar -C /mnt -xvf -
#sync
#sync
#sync
以上操作主要完成,将‘/’目录复制并挂载在 /tmp/cproot目录下,并将整个/tmp/cproot (也就是说整个根文件系统)打包后 再解包到/mnt 下,也就是U盘上。
最后的 sync 命令不能少,此命令完成,数据从缓存写到U盘上。
然后,修改分区表
#block detect >/etc/config/fstab //读取当前挂载状态,并写入文件
#vim/etc/config/fstab //修改分区表文件
config 'global'
option anon_swap '0'
option anon_mount '0'
option auto_swap '1'
option auto_mount '1'
option delay_root '5'
option check_fs '0'
config 'mount'
option target '/mnt/sda1' //此处改为‘/’
option uuid 'c91232a0-c50a-4eae-adb9-14b4d3ce3de1'
option enabled '0' //此处改为 ‘1’
最后reboot
df -h
为了便于识别是从 U盘启动的还是从内部flash启动的,我在/etc/banner 文件的尾部加入了 Boot from U-disk 字样