以 root 身份运行 rsync 但保留用户所有权

edo*_*tan 43 linux rsync

我想使用 rsync 将用户文件从一台服务器备份到另一台服务器。但我注意到用户文件夹更改为 root。如何使用 rsync(由 root 运行)保持用户权限?

Sve*_*ven 57

使用-a标志,其中包括选项-o-g,保留所有者和组。这要求您rsync以 root 身份运行。

另见man rsync


Jer*_*y L 20

保持权限是通过“归档”模式实现的,-a. 常见的例子是-avz

rsync -avz foo:src/bar/ /data/bar
Run Code Online (Sandbox Code Playgroud)

这确保符号链接、设备、属性、权限、所有权等在传输中得以保留。此外,将使用压缩来减少传输的数据部分的大小。


Sim*_*son 6

如果您使用 rsync 进行备份,我真的建议您改用 rsnapshot(它使用 rsync)。它会轮换备份并使用硬链接,因此您可以查看日常备份之间的差异(但文件夹看起来仍然具有完整的内容)。我用它来备份工作中的 Windows 和 Linux 服务器。非常适合我们!