如何备份正在运行的远程服务器?

・6 分钟阅读

问题:

我们想要不关机备份服务器上的所有内容,这是在世界另一端远程运行的,
(这是一个debian系统。)

我看到的很多备份建议像使用dd一样,似乎预先预测驱动器已卸载并不使用,但是,我不应该排除"在线"目录,比如,/proc和/var (不过我知道/var下的一些东西我们确实需要保留)和/mount?下的一些子目录,然后我想我可以用rsync和一组--exclude标志来同步它。

还是有更好的想法,尤其是FOSS友好的想法?


这个系统运行在Linode上,
系统运行shell,电子邮件,XMPP/prosody和网络,有几个简单的Nginx设置,
我们希望备份与这些内容相关的文件,以确保安全。例如文件用户存储在其主目录中,
我们不需要完全复制现有的设置删除每个/etc文件; 相反,我们在第一个地方做备份的原因是,我们可以将它全部移动到新的安装(debian的新版版仍在linode上)。

因此,直接复制整个驱动器会导致陷阱和复制目录有选择性地导致陷阱,我想知道如何正确地做。

我非常感谢你的帮助,非常感谢!


回答 1:

所以,你想备份所有你的驱动器没有所有这些讨厌的错误,并过滤掉所有的/proc和其他临时文件夹?

一个选项是将根目录挂载到文件系统中的另一个文件夹中,如下所示:


$ cd /mnt


$ mkdir drive


$ mount --bind / drive



这将给你驱动器上所有不被视为临时(/proc或/sys文件夹)的文件。

现在你有了根目录的清晰视图,你可以使用标准cprsync将它复制到备份驱动器,类似的东西:


cp -R /mnt/drive /mnt/backupdrive



这将解决你所提到的问题:

  • 你没有进入递归,因为备份磁盘未安装在驱动器(视图)中,
  • 你不会错过任何重要的文件,因为你正在把它们全部拿走,

请参阅:手册mount(8)


回答 2:

在Linux中,一切都是一个文件,这是可能的,但是,有一些事情需要注意,这是(最好)难以解决的问题。

你应该首先考虑复制,尤其是对于数据库,此外,在主服务器前设置代理/负载平衡器也是一个好主意,因此可以在转换过程中重新切换。

在硬件级别上,最好的情况是像服务器在另一端,具有相同数量的以太网端口等,不同的一切都意味着系统配置改变的需要。

即如果你有两个eth端口,你想确保网络配置,防火墙等与两个服务器上的接口名称匹配,如果它不同,你需要在rsync之后,更改配置或更改第二个设备名称(目的地)服务器。

分区布局相同你应该在主服务器上创建相同的分区,但是,如果你从头开始创造你会得到不同的你需要改变。

但是,还有许多可能出错的事情,如数据库,如果不是以前停止(在进行rsync之前),则可能不一致。

最好的策略是首先准备硬件和文件系统(分区) - 以匹配主服务器的配置。然后通过中间系统(临时安装了ssh-server的livecd )挂载空parititons ,你创建空/proc,/dev,/sys,然后按如下方式将它解压缩:


rsync -avz -H --delete /etc /bin (...and so on) destserver:/mnt/yourrootfs/



然后你需要在设备上安装grub并进行配置,使它可引导,改变网络配置,fstab和其他先前提到过的东西。

你还可以尝试安装新的系统(你在主服务器上使用的版本相同),然后关掉电源通过另一个临时系统然后替换除/proc,/sys以外的任何其他内容,.使用rsync的/dev和/boot 。

但这只是一般的想法,根据你实际上的服务器,你的配置,网络和硬件设置可能会复杂些,并且在一天结束时,如果没有明显的停机时间,这可能是非常困难或不可能完成的。


回答 3:

我在我的小型虚拟专用服务器上使用BackupPC,这工作相当,BackupPC可以在后台使用rsync,并且支持完整和增量备份,看看它,看看它是否能满足你的要求。


回答 4:

我认为它依赖于内部Linux命令运行服务器,你必须模仿/管道完整的数据和库,如果你在vmware上运行,并且配置良好,它提供了实时迁移,或者你必须使用第三方工具,希望这对你有帮助,有关的更多参考资料,我如何备份实时服务器

Rsync是在服务器间同步数据的好命令。



回答 6:

你真正想要的是还原,无论你做什么,你都必须定期恢复测试。

Linode有一个后备服务, 快照可以在限定的预先定义日程上执行,也可以使用API 。

基于快照的备份的优点是,它们提供一个明显的时间点,因为数据在复制时不变,快照也可以轻松恢复到不同的主机,在这种情况下是一个新的Linode。


讨论
Xuanlv profile image