Linux - 备份服务器时应该排除哪些目录?

Ama*_*rus 47 linux backup filesystems directory backup-restoration

我正在备份 Linux 服务器并将其存储在另一台服务器上。

我从一个简单的开始

rsync -aPh --del server.example.com:/ /mnt/backup
Run Code Online (Sandbox Code Playgroud)

然后有人指出我不应该备份/proc,因为您不想/proc在另一台服务器上恢复一台服务器的 。

还有什么我应该/不应该包括的吗?

例如,怎么样/sys

Ces*_*arB 42

这两个/proc/sys是反映系统的状态,并允许您更改一些运行时参数(有时做更危险的事情,比如直接写入存储器或设备)的虚拟文件系统。您永远不应该备份或恢复它们。

在大多数现代发行版中,/dev它是在启动时动态创建的(它是一个由udev朋友填充的内存文件系统)。备份它毫无意义,试图恢复它也是徒劳的。但是,如果你的发行版配置为使用一个静态的/dev,这并不适用(检查/proc/mounts,如果/devtmpfs它是一个内存文件系统)。

还有其他文件系统您不应该备份;usbfs(通常/proc/bus/usb,如果安装的话), debugfs(应该是在/sys/kernel/debug如果安装在所有的,但有些人把它放在别的地方,你可能没有这一项), devpts(安装在/dev/pts),其他tmpfs情况下(通常存在于/dev/shm/var/run/var/lock, 和其他地方;备份和恢复它们应该是无害但毫无意义的,因为它们的内容在关机时丢失),以及任何远程文件系统或神奇的自动挂载器目录(尝试备份或恢复它们可能最终导致灾难,因为你可以最终备份/恢复到另一台机器)。你也应该小心/media/mnt,因为可以在那里找到外部设备(例如您忘记在驱动器中的 CD),但您也可能故意使用它们来安装应该备份的内容。

需要注意的是,不是大多无害的其他tmpfs情况下,网络文件系统/ automounters和可移动介质,你不应该备份是所有后代文件系统/dev/proc/sys。如果您有任何网络文件系统(或automounters),并没有可移动媒体,排除/sys/proc并重启后恢复(擦拭tmpfs实例)就足够了。


Way*_*yne 25

这实际上取决于您将如何恢复系统。如果您要重建,那么您只需要服务的配置/数据文件(例如:/etc、/opt、/var、/home)

如果您要进行完整的系统还原,则可以省略 /proc、/boot 和 /dev。然后您可以从您的启动媒体安装最小操作系统,然后通过您的备份恢复您的系统。

当然,最好的备份是经过测试验证的备份。

因此,忽略您认为不需要的内容,尝试在 VM 中还原并验证您可以使用这些数据恢复系统。

  • 不要完全省略`/boot`——你可能需要比较旧的引导配置和新的引导配置。除了手动之外,请确保不要*恢复*`/boot`。 (6认同)
  • 并排除 /sys ......为了恢复到裸机,你最好也排除 /etc/udev/rules.d/ 。 (5认同)
  • 也丢失+发现对于文件系统, /mnt 和 /media 不复制任何已安装的设备 (2认同)

Ted*_*ddy 19

参见备份之道,第 1 章。


pjc*_*c50 8

/proc 和 /sys 中的一些特殊文件会混淆 rsync。通常,您也不想备份已安装的网络文件系统。稀疏文件也会导致问题。

添加 -x 以将其限制为一个文件系统。这避免了所有网络文件系统和 /proc 等。但是,您需要为每个已挂载的文件系统运行一个 rsync。

添加 -S 以明智地处理稀疏文件。