树莓派备份及还原系统后的根分区扩容

故事背景

树莓派用了几年之后32G的内存卡磁盘满了,可用空间只剩下1G多,而且担心寿命将尽(毕竟也用了五六年),文件丢失。因此购买新卡给系统搬家,搬完之后新卡却还是只有1G多可用空间,白忙活了。

准备工作:

要备份的32G内存卡、新的128G内存卡(某东自营三星的58块钱)、USB读卡器、树莓派设备、一台电脑、一个长了手的人

树莓派系统备份

最简单的有两种:

1、在树莓派桌面下用系统自带的工具,左上角菜单下拉附件选项里有个SD Card copier,用它来备份,把你新买的内存卡用读卡器插到树莓派的USB接口下面,然后备份。缺点是速度慢,而且电脑没有镜像包保存到电脑。

2、使用Win32DiskImager工具备份整个32G内存卡,现在电脑里面新建个raspberrypi-back.txt文件接着改后缀为img,这样它就变成了一个镜像文件。接着加载空文件,把树莓派内存卡插到电脑然后选择你的内存卡设备,电脑里可能只能看到40M左右的boot分区,不用管它,勾选仅读取已分配分区,再点读取,弹框那里选择yes,等进度条跑完就行了。这样电脑下就有了一个差不多29GB左右的img格式树莓派的完整镜像,以后就可以随便恢复到其他树莓派或者内存卡了,非常方便。我笔记本电脑自带内存卡槽,不会因为读卡器限制内存卡的读写速度,不然还得买个USB3.0读卡器。

Win32DiskImager操作.png

3、压缩备份

把内存卡放到其他Linux下面,比如树莓派desktop。安装sudo apt install gparted -y,然后用gparted图形化工具加载内存卡,接着umont那个ext4分区,接着resize分区,把空间大小调整到已使用空间差不多大小,这样未使用空间就会显示未分配,点击那个√应用,调整会花一段时间,调整完了把卡取下来插回电脑,再次用win32执行第2步备份系统,这样备份出来文件就缩小了很多,下次使用再还原好了,最后记得备份完后把内存卡刚才缩小的空间还原回去,因为你的卡还要用。优点是体积小缺点是操作步骤麻烦点。但由于我原系统32G内存卡只有1G多可用了,所以就不尝试了。步骤如下图,我用的其他卡做的测试

gparted.jpg


还原系统

把128G新内存卡插到电脑,还是用Win32DiskImager工具,先加载刚备份出来的img镜像文件,再选择三星内存卡,接着写入,等进度条跑完就把内存卡拿下来插到树莓派开机,我基本一次成功中间没有波折,写入速度60M/S,比32G老卡速度快了很多。这个步骤其实和安装系统是一样的,不同的是还原的是自己的img系统文件,另外个是官方的系统。


扩容根分区

查看系统存储

df -h 
lsblk

开始分区

sudo fdisk /dev/mmcblk0

按P打印分区表

按D再回车删除第二个分区

按P查看分区情况

再按N新建分区

回车,选择主分区回车,起始值很重要就是输入你刚才删除的第2个分区那个数字,如果默认是一样的就直接按回车

fdisk.png

上图是我已经扩容操作完成的截图,只是贴出关键的位置

回车,Y

再按W保存,退出

如果有什么设备忙的报错可以先查下原因,我这里即使提示了后面也操作成功了

刷新分区表

sudo partprobe
df -h

磁盘空间还是原来的,还需要resize一下

sudo resize2fs /dev/mmcblk0p2

再次df -h

fdisk-ok.png

已经成功。不过买的时候不是说好128G,怎么只有118G了,哈哈,JS,再次lsblk下看到120G左右那就差不多了

lsblk.png


最后编辑于:2023/07/06作者: admin

发表评论