我正在尝试使用 rsync 将一些数据从一台计算机(PopOS!21.04)备份到另一台计算机(Rocky 8.4)。但无论我在 rsync 中使用哪个标志,文件权限和所有权似乎都不会被保存。
我所做的是在 PopOS 上本地运行此命令:
sudo rsync -avz /home/user1/test/ [email protected]:/root/ttt/
结果我得到了一些链接:
[root@rocky_clone0 ~]# ls -ld ttt/
drwxrwxr-x. 2 user23 user23 32 Dec 17 2021 ttt/
[root@rocky_clone0 ~]# ls -l ttt/
total 8
-rw-rw-r--. 1 user23 user23 57 Dec 17 2021 test1
-rw-rw-r--. 1 user23 user23 29 Dec 17 2021 test2
因此所有文件所有权都更改为 user23,这是 Rocky 上唯一的常规用户。我不明白这是如何发生的,通过 rsync 我连接到远程主机上的 root,但结果文件被复制为 user23。为什么 -a 标志在这种情况下不能正常工作?
我也尝试过这些标志:
sudo rsync -avz --rsync-path="sudo -u user23 rsync -a" /home/user1/test [email protected]:/home/user23/rrr
如果有人可以向我解释我做错了什么,以及如何使用 rsync 备份文件,以便权限和所有权与本地计算机上的相同,我将非常感激。