这可能是树莓派最简洁的备份修改镜像教程

注意

  • win32DiskImager,这个工具不可用于备份。
    (理论上可行,亲测实际备份精简之后,虽然系统能够起来,会有一些奇奇怪怪的问题。比如会有Qtcreator异常闪退的问题,怎么都无法解决)
  • 树莓派在树莓派上备份镜像……那你要做好准备让他跑一整晚,真的太慢了。
  • 强烈建议把卡扣下来,找个Linux的主机搞这个事情,效率高到不知道哪里去了

备份镜像

准备材料

  1. 一台Linux系统的PC或者虚拟机(有最好,没有用树莓派也可以,就是可能会花费你一整个晚上)
  2. SD卡的读卡器

开始操作

1. 将TF卡插到Linux的PC上去,在终端执行下列命令

$ df -h | grep "sd/*"

插入前

插入后插入前后
相比之下很容易找到多出来的TF卡,路径为 /dev/sdb,记住这个路径

2.执行备份操作
顺利的话一个小时左右就能备份完成。
主力这里的/dev/sdb*取决于1中找到的路径

$ cd ~
$ sudo dd if=/dev/sdb of=raspberry.img;

3.镜像精简
等待执行完成之后,则即可得到一个成功精简的备份镜像。

$ cd ~
$ wget http://doudingcross.oss-cn-shanghai.aliyuncs.com/source-code/pishrink.sh
$ sudo chmod +x pishrink.sh
$ sudo ./pishrink.sh raspberry.img

正常执行过程如下(可能会有部分出入,但是最后的pishrink.sh: Shrunk raspberry-0824.img from 30G to 6.6G …都会有,数字可能有出入)

pishrink.sh v0.1.2
pishrink.sh: Gathering data ...
Creating new /etc/rc.local
pishrink.sh: Checking filesystem ...
rootfs: Inodes that were part of a corrupted orphan linked list found.  
rootfs: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
        (i.e., without -a or -p options)
pishrink.sh: Filesystem error detected! ...
pishrink.sh: Trying to recover corrupted filesystem ...
e2fsck 1.44.1 (24-Mar-2018)
rootfs contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Inodes that were part of a corrupted orphan linked list found.  Fix? yes
Inode 132216 was part of the orphaned inode list.  FIXED.
Inode 263112 was part of the orphaned inode list.  FIXED.
Inode 515581 was part of the orphaned inode list.  FIXED.
Inode 515592 was part of the orphaned inode list.  FIXED.
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
rootfs: ***** FILE SYSTEM WAS MODIFIED *****
rootfs: 135735/1876672 files (0.4% non-contiguous), 1263572/7725184 blocks
resize2fs 1.44.1 (24-Mar-2018)
pishrink.sh: Shrinking filesystem ...
resize2fs 1.44.1 (24-Mar-2018)
Resizing the filesystem on /dev/loop24 to 1637680 (4k) blocks.
Begin pass 2 (max = 99899)
Relocating blocks             XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 236)
Scanning inode table          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 11817)
Updating inode references     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/loop24 is now 1637680 (4k) blocks long.
pishrink.sh: Shrinking image ...
pishrink.sh: Shrunk raspberry-0824.img from 30G to 6.6G ...

修改做好的img镜像

如果你发现你做好的img镜像中有配置文件不对,或者是想在rootfs中放入一些其他的东西可以参考此步骤。
1. 挂再img镜像到Linux主机上(此处测试采用Ubuntu 18.04系统)

$ cd ~;
$ sudo losetup -f -P raspberry.img

成功的话会在/dev目录下看到新增的/dev/loop设备,主要看设备描述符新增的时间。可以找到这里树莓派镜像的两个分区,下图p1是boot分区,p2是rootfs分区
在这里插入图片描述

2. 挂载设备到文件夹

$ cd ~;mkdir temp
$ sudo mount /dev/loop24p2  ~/temp;
$ ls

正常会看到这么多
在这里插入图片描述

3.随心所欲的修改
此处省略,注意如果你修改root权限相关的文件或者文件夹一定要用sudo,普通文件注意用户噢

4.卸载设备

$ sudo losetup -d /dev/loop24

最终你得到一个称心如意的镜像~

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值