我每天都在备份我的Debiannetworking服务器。 星期天的完整备份,每星期有一天的差异。
备份是用Tar进行的。 我将整个系统备份到Tar文件中。
如果我的networking服务器上的硬盘坏了,我把所有的备份都放在了安全的地方。
但是如果在前一天有差异备份的新硬盘上进行裸机还原,最好的办法是什么? 我可以用启动光盘启动,然后格式化一个新的硬盘,解压备份文件? 我该怎么做呢?
编辑:
这是我的备份脚本:
#!/bin/sh # Backup script BACKUPDIR="/backups" BACKUPFILE=$BACKUPDIR/backup_$(date +%y-%m-%d).tgz if [ ! -d $BACKUPDIR ]; then mkdir $BACKUPDIR fi if [ -f $BACKUPFILE ]; then echo "Backup file already exists and will be replaced." rm $BACKUPFILE fi apt-get clean tar czpf $BACKUPFILE --same-owner \ --exclude=$BACKUPDIR \ --exclude=/boot/grub/menu.lst* \ --exclude=/home/error.log \ --exclude=/proc \ --exclude=/media \ --exclude=/dev/* \ --exclude=/mnt \ --exclude=/sys/* \ --exclude=/cdrom \ --exclude=/lost+found \ --exclude=/var/cache/* \ --exclude=/tmp / 2>/home/error.log
简单地恢复硬盘是不够的,你可能会希望你的启动logging太多,我不相信在你的备份存在(我错了吗?,如果我这样做对你更好!)…
为了保证服务器能够启动(我个人更喜欢创build额外的分区挂载到/boot ,这个分区会有kernel和initrd以及busybox或类似的东西,允许你进行基本的维护任务)。 您也可以使用Linux发行版的Live CD。
将未来的root partition挂载到某处并恢复备份。
tar是为磁带创build的,因此它支持附加到具有相同名称的归档文件。 如果你使用这个方法,只需untar -xvpf backup.tar -C /mnt如果没有的话,你需要恢复“最后一个星期日”的备份,并在需要的时候应用优惠部分。
你应该记住,有很多你不应该备份的东西,比如: /proc , /dev , /sys , /media , /mnt (可能还有一些取决于你的需要)。 在创build备份之前,您需要照顾它,否则在恢复过程中可能会变得非常痛苦!
使用整个服务器的备份方法可以轻松地忽略许多要点:
在Ubuntu Wiki:BackupYourSystem / TAR上可以find关于这个确切方法的一些好的方面。 寻找恢复。
BTW:
puppet或chief零痛苦,所以只有你应该关心的是真实的数据) PPS
我推荐阅读Jeff Atwood关于备份的文章http://www.codinghorror.com/blog/2008/01/whats-your-backup-strategy.html和http://www.codinghorror.com/blog/2009/ 12 /国际备份意识,day.html
如果差异备份不是强制性的,那么裸机备份/恢复的最佳select是ddrescue: http ://www.gnu.org/software/ddrescue/ddrescue.html