在重新启动时用dd备份

我试图为我们的本地linux服务器实现易于维护的备份解决scheme。 目标是能够从图像文件恢复整个系统。

我在想的只是用cron发行下面的脚本

FILENAME=`date +%F`.bak dd if=/dev/sda | bzip > /media/remote_backups/$FILENAME 

问题是这个脚本应该在特殊的环境下运行 – 只有基本的服务工作,没有文件系统被挂载。

所以,问题是:是否有可能通过cron重启服务器,例如每周一次,然后不启动正常模式,而是某种“特殊”模式,当没有加载时,除了:

  1. 在/ media / remote_backups上挂载远程分区以备份/
  2. 如前所述执行dd

dd真的不是这个最好的解决scheme。 如果你想要“快速和肮脏的备份”,你应该看看像rsync的东西。 否则,看看像Bacula这样的产品做一个更全面的备份。

使用rsync,您将拥有文件备份。 在完全失败的情况下,您需要重新安装linux,然后从远程位置复制rsync'd文件。

使用bacula,它会对系统进行完整的裸机备份,因此您可以恢复整个系统操作系统和所有用户文件。

看到这篇文章的全面文件解释Bacula的裸机恢复。

唯一容易主要的备份解决scheme是正确完成的。

花时间适当地实施bacula或阿曼达,你会避免完全灾难。

您上面完成的唯一的事情是保护驱动器失败。 这样做有很多更好的方法 – 比如镜像驱动器。

简单的答案 – 你可以通过组合一些工具来做你想做的事情,比如grub-reboot - set the default boot entry for GRUB, for the next boot only以及启动系统,在一些特殊的运行级别(或者init = kernel boot param) dd命令。 不要这样做!

请考虑像这样的工具:

  dump - ext2/3/4 filesystem backup xfsdump - XFS filesystem incremental dump utility 

因为他们可以在挂载的文件系统上工作,或者至less使用partimage而不是dd。

 partimage - back up and restore disk partitions 

只有使用的块被复制并存储到图像文件中。 您可以通过networking复制数据(使用SSL),而且还具有更多function。