如果用户名相同但用户 ID 不同,rsync 是否会在服务器之间保留所有者

Mar*_*ala 5 rsync permissions

我有以下情况:

服务器 A 有一个marcouserid 的用户10001 服务器 B 有一个marcouserid 的用户10004

我正在将test.txt由 拥有的文件marco从服务器 A复制到服务器 B,并rsync -avz在服务器 B 上以root.

如果用户 ID 不同,rsync 会保留所有者吗?

use*_*686 8

是和否。

  • 如果您是服务器 B 上的普通用户,rsync 无法对文件所有权做任何事情——您创建的所有文件都将归您所有,故事结束。因此,如果您以“marco”身份连接到服务器 B,则文件将归“marco”(10004) 所有。

  • 如果您在服务器 B 上拥有 root 权限并且不使用任何特殊选项,那么 rsync 将保留用户名——文件将由用户“marco”拥有,无论它具有什么 UID。

  • 如果您有 root 用户并使用--numeric-uids,rsync 将保留UID——文件将由 UID 10001 拥有,无论它属于哪个用户。

  • 不,它也可以意味着。诸如 rsync 或 tar 之类的工具通常具有在“保留所有者 UID”和“保留所有者用户名”模式之间切换的显式选项。由于 rsync 有 `--numeric-uids`,它暗示(并且在手册页中提到)默认是发送文本用户名。 (2认同)