暂未分类暂未分类linux系统克隆系统盘
zphj1987本文将介绍两种方式的系统盘的完整的备份,两种方式各有优缺点,需要根据实际情况来进行选择
- 使用dd的完整镜像克隆的方式
- 使用tar去备份数据,安装grub的方式
dd方式
优点:
简单,一条命令 dd if=/dev/sda of=/dev/sdb 就可以进行完整的系统备份了
缺点:
时间非常长,备份一个系统盘,无论数据多少,系统盘全部会读取一遍,时间比较久
备份目的盘需要大于原盘
分区无法调整,根原分区一模一样
tar方式
优点:
时间短,只需要备份实际磁盘上的数据即可
自定义,可以修改分区的大小,可以控制备份的类容,可以定期备份
对目的盘大小无限制,比较灵活
缺点:
人为修改东西比较多,需要手动去修改一些信息
当然在掌握了一定的linux基础的情况下建议是使用tar方式的,,下面将介绍tar方式的处理方式:
给准备用来备份的磁盘进行分区和格式化
首先使用 df -h 来检查当前的挂载的系统分区:
1 2 3 4 5
| Filesystem Size Used Avail Use% Mounted on /dev/sdb5 285G 4.1G 266G 2% / tmpfs 2.0G 4.0K 2.0G 1% /dev/shm /dev/sdb1 239M 81M 141M 37% /boot /dev/sdb2 6.7G 17M 6.3G 1% /var/log
|
查看磁盘的大小:
1 2
| [root@zhongbo ~] Disk /dev/sdb: 320.1 GB, 320072933376 bytes
|
本例子中备用磁盘为sda,大小为240G:
1 2
| [root@zhongbo ~] Disk /dev/sda: 240.1 GB, 240057409536 bytes
|
查看系统盘详细的分区信息
1 2 3 4 5 6 7 8 9 10 11 12
| [root@zhongbo ~] Model: ATA WDC WD3200AAJS-2 (scsi) Disk /dev/sdb: 320GB Sector size (logical/physical): 512B/512B Partition Table: msdos
Number Start End Size Type File system Flags 1 1049kB 263MB 262MB primary ext4 boot 2 263MB 7603MB 7340MB primary ext4 3 7603MB 9751MB 2147MB primary linux-swap(v1) 4 9751MB 320GB 310GB extended 5 9752MB 320GB 310GB logical ext4
|
可以看到分区表模式为msdos,分区信息为含有扩展分区,逻辑分区了,下面为新准备的盘进行分区,分区信息跟原来尽量一样,这个地方也可以根据自己的需要进行调整
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| [root@zhongbo ~] (parted) mklabel msdos (parted) mkpart primary 1049kB 263 (parted) mkpart primary 263 7603 (parted) mkpart primary 7603 9751 (parted) mkpart extended 9751 100% (parted) mkpart logical 9752 100% (parted) p Model: ATA INTEL SSDSC2BF24 (scsi) Disk /dev/sda: 240GB Sector size (logical/physical): 512B/512B Partition Table: msdos
Number Start End Size Type File system Flags 1 1049kB 263MB 262MB primary ext4 2 263MB 7603MB 7340MB primary ext4 3 7603MB 9751MB 2147MB primary linux-swap(v1) 4 9751MB 240GB 230GB extended lba 5 9752MB 240GB 230GB logical ext4
|
格式化硬盘
1 2 3 4
| [root@zhongbo ~] [root@zhongbo ~] [root@zhongbo ~] [root@zhongbo ~]
|
备份原始磁盘上的数据到备份目的盘
在本地系统盘上创建一个备份的目录,将数据打包放到这个目录下面
按这个系统来说需要备份三个分区/ , /var/log/, /boot
开始备份/
所有的操作都进入到/目录下操作
1 2
| [root@zhongbo ~] [root@zhongbo /]
|
注意这里排除了很多不需要备份的目录
备份boot分区
备份/var/log
恢复/的数据
1 2 3
| [root@zhongbo /] [root@zhongbo /] [root@zhongbo /]
|
恢复/boot的数据
1 2 3
| [root@zhongbo /] [root@zhongbo /] [root@zhongbo /]
|
恢复/var/log
1 2 3
| [root@zhongbo /] [root@zhongbo /] [root@zhongbo /]
|
修改启动文件
拿到新的分区的blkid
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| [root@zhongbo /] /dev/sda1: UUID="a6ca4369-109c-47ed-a522-7e1752a6681b" TYPE="ext4" 对应boot [root@zhongbo /] /dev/sda2: UUID="f775f248-57d8-49a7-9334-60bc75a53685" TYPE="ext4" 对应log
[root@zhongbo /] /dev/sda5: UUID="6942c7d6-486c-4d51-bb4d-a126ee0c05b1" TYPE="ext4" 对应/
[root@zhongbo /] /dev/sda3: UUID="154784d8-dbe3-45c8-8fcb-cb4f5a14ae44" TYPE="swap" 对应swap
|
1 2 3 4 5 6
| [root@zhongbo /] 修改对应分区的uuid信息
修改menu.list [root@zhongbo ~] 修改root= 根分区的uuid,第一次做的时候,就是在这个地方忘了修改,进入系统后能够看到启动画面,但是没法启动内核,修改好了后,就可以正常的启动了
|
安装grub
查找grub分区
1 2 3 4 5
| grub> find /grub/grub.conf find /grub/grub.conf (hd0,0) (hd1,0) grub>
|
修改其中的新盘上的grub然后分辨新的grub在哪台机器上,我的新盘是(hd0,0)
1 2 3 4 5 6 7 8 9 10 11 12
| grub> root (hd0,0) grub> setup (hd0) setup (hd0) Checking if "/boot/grub/stage1" exists... no Checking if "/grub/stage1" exists... yes Checking if "/grub/stage2" exists... yes Checking if "/grub/e2fs_stage1_5" exists... yes Running "embed /grub/e2fs_stage1_5 (hd0)"... 27 sectors are embedded. succeeded Running "install /grub/stage1 (hd0) (hd0)1+27 p (hd0,0)/grub/stage2 /grub/grub.conf"... succeeded Done. grub> quit
|
完成后,系统盘就完全备份了一份了,重启就可以启动一个一模一样的系统了