前言

当树莓派用途不同时,可能需要更换不同的配置环境和系统,但每次从初始镜像开始配置实在是太麻烦和耗费时间了.所以一般是配置好系统环境后,使用Win32DiskImager之类的镜像读写软件将sd卡生成一个img后缀镜像文件,以方便我们归档和将来再次使用时进行写入到sd卡中.

但是该方法有一个很大的缺点:Win32DiskImager因无法读取到linux分区,所以导致实际是将整个sd卡进行了备份,导致系统本身占用不大,但是生成的img镜像确实与sd卡大小相同,本篇将介绍如何使用PiShrink将镜像文件压缩.

PiShrink项目github地址:https://github.com/Drewsif/PiShrink


准备

1.你需要一个linux系统,这里我用vm开的Ubuntu20.04虚拟机演示

2.使用Win32DiskImager(点击跳转下载)对树莓派sd卡生成img镜像文件


安装步骤

1.安装PiShrink,在linux的命令行中运行以下指令下载最新版本

wget https://raw.githubusercontent.com/Drewsif/PiShrink/master/pishrink.sh

2.给pishrink文件进行授权,让它有运行权限,变成二进制可执行文件

chmod +x pishrink.sh

3.将它移到/bin目录下,以方便我们以后直接调用

sudo mv pishrink.sh /usr/local/bin/

使用步骤(让树莓派镜像更小)

1.现在我们在linux的命令行中运行以下指令,即可压缩树莓派的镜像

sudo pishrink.sh raspbian-stretch-lite.img
//raspbian-stretch-lite.img 为镜像文件名,使用时将其更改为你需要压缩的镜像文件名即可

你也可以添加参数 -s 跳过该过程的自动扩展部分。

例如

sudo pishrink.sh -s raspbian-stretch-lite.img newpi.img
//raspbian-stretch-lite.img 为镜像文件名,使用时将其更改为你需要压缩的镜像文件名即可

这将创建一个源镜像文件(即 raspbian-stretch-lite.img)的副本到一个新镜像文件(newpi.img)并进行处理。有关更多详细信息,请查看最后给出的官方 GitHub 页面


参考资料:

PiShrink:制作更小的树莓派镜像文件

PiShrinkGitHub 页面