近半年时间用来监控陆龟的树莓派 Raspberry Pi 还算稳定,可到了冬天龟箱里的加热灯长时间加热导致树莓派温度很高,时不时的自动重启。如果每次都能正常起来也就罢了,可偶尔会挂不上SD卡的文件系统直接宕了,还得用备份还原SD卡(如果没备份那就悲催了)。
买树莓派的时候只想到存储空间大能多存的东西于是买了个16GB的SD卡,可实际用了2G空间不到。最开始备份树莓派SD卡是用windwos下的Win32DiskImager,这种备份恢复树莓派的方式最简单,Windows+读卡器+Win32DiskImager 就可以对树莓派的SD做完整的镜像备份,可我的树莓派用的16GB的SD卡,备份还原既浪费空间又浪费时间。
后来发现一种直接用dd备份树莓派的方法,就是先在树莓派上mount一个共享目录(空间大于SD卡的即可),然后用
dd if=/dev/mmcblk0 of=raspberrypi.img bs=1M
备份成raspberrypi.img镜像文件,恢复的方式有两种:一是用Win32DiskImager在windows系统上直接写到SD卡中;二是在Linux系统中用(先fdisk -l查看设备)
dd if=/path/to/image/raspberrypi.img of=/dev/sdx
这种方式要考虑网络环境,如果你的树莓派接的无线网卡,最好放弃这种方式,太慢!
最后介绍最终极的备份还原树莓派的方式,利用dump 和 restore。先说明一下这种备份方式的好处:一是可以像Windows的Ghost只dump有效数据,也就是说可以最有效的节省备份空间,树莓派有多少数据就生成多大的镜像文件;二是可以恢复到比原来SD卡空间的小的SD卡上,我原来用的树莓派是16GB,现在可以把镜像恢复到8GB或者4GB的SD中。下面看详细步骤(不想看可以直接跳到最后的脚本)