目前,我正在使用 rsync/ssh 组合脚本将千兆字节和千兆字节的数据从实时服务器备份到备份服务器,从而允许每晚使用 cron 作业进行自动化操作。
我遇到的问题是权限。
使用 -a 模式运行 rsync 会复制 user:group 和 filemode,它们当前是 54122:games 和 -rwx--S---。
为了能够在备份服务器上执行文件(不要问我为什么雇主需要这样做),我不得不运行时间和 CPU 成本高的(因为传输的数据量很大) chown () 和 chmod() 将每个文件/文件夹设置为 www-data:www-data 和 755 的权限。
无论如何我可以设置 rsync 以强制将每个文件/文件夹设置为 www-data:www-data 和 755 还是我从错误的角度看待这个问题?
我想我可以运行 -rltD 而不是 -a(相当于 -rlptgoD),但是新文件会发生什么?他们收到哪些权限和所有者:组设置?
在许多其他选项中, rsync可以通过使用以下选项运行它来更改权限:
您还可以将 option
--archive
与 option结合使用--no-owner
或--no-perms
排除所有者 resp 的保留。权限。有关 CHMOD 非常微妙的设置的更多选项,请参见rsync 的手册页。如果权限已经在您要复制的机器上以这种方式设置,您可以尝试 -p。它保存了权限。此外,您可能想尝试 grsync。这是 rsync 的 gui,它使一些选项更加明显。-o 也保留了所有者。
希望有帮助。祝你好运。