一.问题的现象
在进行银行麒麟V10的系统备份时,会因为所需备份的系统过大导致备份分区容量不足导致备份失败的情况:
二.解决方法
该问题的处理思路与之前写过的一篇文章:【linux】把home目录挂载到其他分区(数据盘/data等)下类似,故本次也参考了那篇文章的基本思路,再加上银河麒麟V10系统的一些特有性适配步骤,可以解决该问题。
在银河麒麟操作系统中,/backup分区不会自动挂载,只有在备份还原工具打开时才会自动挂载,所以工具未打开时使用指令"df -h"是找不到/backup分区的:
打开了备份还原工具后再重新查询"df -h"即可看到/backup分区挂载(所以下面的操作均需要把备份还原工具打开,以免找不到/backup分区):
PS:如果打开备份还原工具打开失败,则可能是因为在安装操作系统时没有选择创建备份分区。
本次的解决方法是将/backup分区和/data分区进行临时互换,以实现可用空间的临时扩容:
首先使用指令"rsync -a /backup /data",将/backup分区的数据同步至/data分区下,需要注意的是,最好尽量保持/data分区所挂载的文件没有任何数据,否则可能出现同步不成功的情况:
使用指令"cat /etc/.bootinfo"查看文件内容,其中UUID即为/backup分区的UUID:
使用指令"lsblk -f"可以查看到全部分区的UUID信息:
将/data分区的UUID修改到/etc/.bootinfo文件里去:
使用指令"lsblk -f"可以查看到/data分区和/backup分区当前所挂载的文件系统(记住这个文件系统名字,后面要用):
使用指令"umount /data /backup"将两个分区全部卸载(此时需要将备份还原工具关闭,否则会出现卸/backup载不成功的问题):
使用指令"mount 文件系统 分区"将/data分区和/backup分区分别挂载至互相的文件系统中:
两个分区重新挂载完成后,重新打开备份还原工具即可。该方法在重启后会恢复原来的挂载分区,但是文件/etc/.bootinfo里的UUID还是自己修改的那个UUID,需要手动更改回来。
额外的知识:
- 使用指令"e2label /dev/XXX 卷标名"可以设置分区的卷标
- 使用指令"unsquashfs XXX.img"可以解压备份的ghost镜像