扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
ZDNet至顶网软件频道消息 虽然Linux系统可通过tar/cpio/dd等方法直接进行备份,但如果系统正处于运行状态,并不能保证备份出来的系统是完全干净的。由此可通过rescue的skip模式绕过操作系统进行备份,再重建initrd.img、grub可实现跨硬件平台的Linux克隆方法。
以下以RHEL6.2为例做测试,此方法同样可用于备份Windows系统。
搭建Linux的rescue环境
● 创建本地rescue环境
1.# cp -rp /mnt/RHEL6/images/ /boot //从系统光盘里拷贝出images目录到相应的目录中
2.# vi /etc/grub.conf //向grub.conf文件中添加以下内容
3.title RHEL6_rescue
4. kernel /boot/images/pxeboot/vmlinuz rescue
5. initrd /boot/images/pxeboot/initrd.img
● 创建基于PXE的rescue环境
详见"DHCP+TFTP+PXE自动网络引导安装Linux操作系统"中关于PXE环境搭建的说明
另:也可通过系统光盘启动,选择进入rescue环境
备份/克隆Linux
1.# mkdir /source /backup
2.# mdadm -As /dev/md0 //若系统分区创建在RAID上
3.# lvm vgscan //若系统分区创建在LVM上
4.# lvm vgchange -a y /dev/Lrhel6
5.# mount /dev/Lrhel6/root /source //以下根据系统实际情况挂载所有系统目录
6.# mount /dev/Lrhel6/home /source/home
7.# mount /dev/sda1 /source/boot
8.# mount /dev/Lrhel6/backup /backup
9.# tar zcvf /backup/os.tgz /source //备份出干净的系统文件
恢复/迁移Linux
启动系统进入rescue的Skip模式
1.# fdisk /dev/sdb //对新加入的磁盘进行分区
2.# mkdir /backup /dest
3.# mount /dev/sda2 /backup
4.# mount /dev/sdb2 /dest
5.# tar zxvf /backup/os.tgz /dest
6.7.# vi /dest/etc/grub.conf //根据实际情况编辑grub配置文件
8.# vi /dest/etc/fstab //根据实际情况编辑fstab文件
9.# rm -rf /dest/etc/mtab //删除mtab文件,登录系统后将自动创建mtab文件
10.# exit
11.reboot
12.13.重新启动系统进入rescue的Continue模式,重新生产initramfs,并安装grub
14.# chroot /mnt/sysimage
15.# cd /boot
16.# mkinitrd -f initramfs-$(uname -r)。img $(uname -r) //重新生成initramfs文件
17.# grub-install --recheck --no-floppy /dev/sda
18.19.若提示Could not find device,则退出根分区重装grub,并指定根分区的路径
20.# exit
21.# cp /mnt/sysimage/sbin/grub /sbin
22.# grub-install --recheck --no-floppy --root-directory=/mnt/sysimage /dev/sda
23.# exit
24.# exit
25.reboot
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者