我想rsync
(作为用户)从本地计算机上的“我”到远程计算机上的“另一个”用户。但是,我还希望“另一个”用户(在远程计算机上)拥有这些文件,并能够像“我”(在本地计算机上)一样使用它们。
我相信我应该使用以下选项:(-p
保留权限)、-g
(保留组)和-o
(保留所有权),但我不确定这些选项的确切效果。我应该强加哪一项?
答案1
您的答案可以在 rsync 手册页的选项下找到-p, --perms
:
因此,当 --perms 和 --executability 都是残疾人,rsync 的行为与其他文件复制实用程序(例如 cp(1) 和 tar(1))的行为相同。
这看起来像你想要的,你走在正确的轨道上。我建议您阅读联机帮助页中的整个部分,以全面了解这些选项提供的功能。
您可以使用语法禁用选项--no-OPTION
,因此禁用权限将是:
rsync -a --no-perms --no-group /source /target
您可以在 ~/.bashrc (对于 Ubuntu IIRC)中将其设置为别名,以便更轻松地输入:
alias rsync-cp='rsync -a --no-perms --no-group --progress'
只需调用 rsync-cp 而不是 rsync 即可使用这些选项。我也包含了 --progress 来显示 rsync 进度条。