小话备份与恢复

在电信领域的产品,可能都会提供Disaster Recovery。许多人都知道ghost,可能用过Symantec NetBackup,他们都能帮你备份和恢复系统。如果你自己想通过简单的tar,dump, dd, cpio实现它,需要实现哪些功能呢?

首先你想实现哪些backup类型? 他们分为:Full/Incremental/Network/Dump.

Full就是备份所有的东西。Incremental就是在上一次Full备份基础之上只备份所有后来的任何改动。 Network就是有一个client帮助把你备份并且通过sftp或者其他方式传到远端服务器。Dump能够把整个磁盘分区信息或者文件系统dump出来,比方我们把这个disk dd出来,在restore的dump时候,需要我们有相同的硬盘大小和恢复位置。

第二,如果是OS层的恢复,我们就是我们需要使用USB或者其他启动设备帮助启动,然后从已存在的备份中恢复。

第三,就是文件系统分区。我们可能需要这些信息,当恢复的时候,我们可能换了一块新硬盘,需要使用这些分区信息重新生成文件系统。

backup示例:

#mount USB key to$BACKUP

#使用tarbackup系统

tar zc --one-file-system--anchored -S --no-ignore-case --exclude $BACKUP --exclude /tmp  / --exclude /var/log --exclude /var/tmp--exclude /var/run /var > $BACKUP/backup.tgz

#backup 磁盘分区和LVM信息

#准备 USB启动所需的vmlinuzand initrd.gz到 $BACKUP/boot

# 创建grub boot menu

cat >$BACKUP/boot/grub/grub.conf <<EOF

timeout 10

 title recovery

  kernel=$BOOT/vmlinuz why=gdi

  initrd=$BOOT/initrd.gz

...

EOF

#安装bootload

grub-install--no-floppy --root-directory=$BACKUP $GRUB_DEV

restore示例:

使用USBkey启动

使用已有的backup 磁盘分区和LVM信息重新格式化文件系统

untar backup.tgz和其他文件系统

准备硬盘启动的boot

从硬盘启动

原文地址:https://www.cnblogs.com/dyllove98/p/3144819.html