我们想要备份我们的 Debian 服务器上的所有内容,该服务器在世界的另一端远程运行(由 Linode 托管),而无需关闭它。
这个系统运行 shell、电子邮件、XMPP/prosody 和 web,有几个简单的 nginx 设置。
为了安全起见,我们希望备份与这些内容相关的文件。例如,用户存储在其主目录中的文件。
我们不需要在每个 /etc 文件中完全复制现有的设置;相反,我们甚至首先进行备份的原因是我们可以将其全部移至新设置(较新版本的 Debian 仍在 Linode 上)。
我看到 Linode 提供备份服务。但从长远来看,我们也需要我们自己的备份,以防万一它们倒闭或发生其他奇怪的事情。
这个问题存在的原因是,当我过去尝试进行备份时,我一直在犯以下两个错误:
/它下面的所有内容”然后陷入一些奇怪的无限循环,因为我复制的驱动器安装在 /media/backup 下并且它正在递归复制自身 [obv该特定问题不适用于此处,因为我们将通过 rsync 或类似方式进行备份] 或者它在尝试复制 /proc 或 /var 或其他任何“活动”内容时卡住了,例如试图跟上不断变化的日志,或者/var),让我们/etc在 /var/ 下获取一份和所有旧邮件的副本vmail”,然后我总是搞砸了文件权限或时间戳(确保这次我不会将 unix 文件备份到 FAT 驱动器)或忘记某些东西(“哦,拍摄,我在 /usr/ 中有一些自定义脚本/我从未在其他任何地方存储过的本地/垃圾箱,我忘了拿那些,我猜它们现在已经不见了”)。因此,直接复制整个驱动器会导致陷阱,而选择性地复制目录会导致陷阱。我想知道如何正确地做到这一点。
服务器故障问题一个完整的备份系统需要什么?涵盖哲学和良好实践,但我正在寻找以下更具体的细节:
rsync -HXaz我认为对我们来说是一个不错的选择?该-zOBV没有真正涉及到这是“我该怎么维护”的问题我看到的很多备份建议,例如使用dd,似乎都假定驱动器已卸载且未在使用中。但我我不应该排除“活”的目录,如/ proc和一些在/ var子目录(但是,一些在/ var我知道我们肯定的东西做必要保持)和/安装?在这种情况下,我还需要考虑什么?然后我想我可以使用 rsync 并使用一堆--exclude标志来捕捉它。
或者有更好的想法,尤其是 FOSS 友好的想法?