rsync归档模式

rsync归档模式

我已经阅读了大量有关rsync及其-a切换的文章。根据理论,我知道它保留了很多属性,如权限、时间、组、所有者等,但为什么当我尝试它时这不起作用?

有两个用户sampam。我正在尝试将文件从/home/sam同步到/home/pam,同时保留其所有者和组。

[sam@localhost sam]$ ll
-rwx---r-x 1 sam sam 0 Jul 18 18:39 abc

如果我尝试 rsync (以 user 身份登录后pam),复制的文件没有sam所有者或组。

[pam@localhost pam]$ rsync -a /home/sam/* /home/pam
[pam@localhost pam]$ ll
-rwx---r-x 1 pam pam 0 Jul 18 18:39 abc

为什么它不保留abcas 的所有者和组sam

答案1

保留所有者(-o,包含在-a)是一项仅对超级用户 (root) 可用的功能。保留组(-g,包含在 中-a)仅限于运行 rsync(在目标站点上)的用户是该组成员的情况。 Rsync 之所以如此,是因为在大多数 Unix 变体上,都允许设置目标文件的所有者和组。

您可以使用 root 用户尝试该命令,或者添加选项--super--fake-super

--super仍将尝试更改所有者和组,但前提是操作系统允许这样做。并非所有操作系统都允许这样做,最近的 Solaris 版本就是一个很好的例子。

--fake-super将向目标文件添加扩展属性,以通过添加权限来模仿(假)文件的所有者和组。

相关内容