我有以下案例:
服务器 A 有一个用户marco
,其 userid 为10001
服务器 B 有一个用户,marco
其 userid 为10004
test.txt
我正在将拥有的文件marco
从服务器 A 复制到服务器 B,并rsync -avz
在服务器 B 上以 的身份运行root
。
如果用户 ID 不同,rsync 是否会保留所有者?
答案1
是也不是。
如果你是普通用户在服务器 B 上,rsync 无法对文件所有权做任何事情 – 您创建的所有文件都归您所有,故事就到此结束。因此,如果您以“marco”的身份连接到服务器 B,则文件将归“marco”(10004)所有。
如果你在服务器 B 上具有 root 权限,并且不使用任何特殊选项,则 rsync 将保留用户名– 文件将归用户“marco”所有,无论其 UID 是什么。
如果你有 root 权限并使用
--numeric-uids
,rsync 将保留唯一标识– 文件将归 UID 10001 所有,无论它属于哪个用户。