前言
为了方便后续理解与阅读,该笔记做出如下规定:
sda:需要备份的系统盘
sdb:备份盘,该盘做完备份后,依旧能作为系统启动盘启动系统
1、查看sda盘的分区方式
# fdisk -l /dev/sda
2、查看sda的分区以及各个分区的大小
# lsblk /dev/sda
可以看到现在sda一共是三个分区
1K free space
512M /boot/efi
19.5G /
因为这个只是虚拟机演示,所以对于基础的完整的镜像还少了个swap分区,不过也没关系,我们只需要备份的是/boot分区和/分区
而这个1K的free space只是在分区时硬盘上这个分隔区的起点或终点大小不是K的整数值,所以增加分区时自然可能在起点之前或者终点之后留下一些未分配的空间间隔。
3、格式化sdb
# mkfs.ext4 /dev/sdb
4、给sdb进行分区
在得知了sda的分区方式和所有分区后,现在参照sda的分区给sdb进行分区
# cfdisk -z /dev/sdb
分完之后应该是这样,如果有swap分区记得给swap分区分出来,并且设置type为linux swap
现在我们再次查看硬盘信息可以看到sdb已经分成两个区
5、设置sdb分区的UUID
sdb分区的UUID需要和sda分区的UUID保持一致。
首先查看UUID
设置分区的UUID
# mkfs.ext4 -U 2575-89D1 /dev/sdb1
# mkfs.ext4 -U 6601eb64-cfc0-4fac-b03b-caee2d6abaa3 /dev/sdb2
要是有swap分区则需要使用mkswap命令
6、挂载并且备份
主要需要备份的是/boot目录和/目录
# mkdir -p /mnt/sda1 /mnt/sda2 /mnt/sdb1 /mnt/sdb2
# mout /dev/sda1 /mnt/sda1
# mout /dev/sda5 /mnt/sda2
# mout /dev/sdb1 /mnt/sdb1
# mout /dev/sdb1 /mnt/sdb2
之后就是进入到sda的目录内将所有东西备份
# cd /mnt/sda1
# rsync -a * /mnt/sdb1
# cd /mnt/sda2
# rsync -a * /mnt/sdb2
备份完成后解挂文件系统,至此所有东西备份完成,sdb可以作为一块完整的系统盘启动。