Evg*_*kov 4 rsync file-permissions
我有两个目录,每个目录都有相同的 PHP 应用程序。我想rsync -rvz从一个源目录执行到另一个目标,因此 rsync 将仅复制更改的文件。问题是源目录中的文件错误地具有 755 权限。目的地的权限很好。
如何告诉 rsync 忽略权限检查并仅按大小检查?谢谢。
只要您不提供 -p 标志,就不应该更改权限。如果您仍然没有获得期望的权限,请确保权限已关闭并使用 --chmod=ugo=rwX
供参考: http: //linux.die.net/man/1/rsync
-r, --recursive recurse into directories
-v, --verbose increase verbosity
-z, --compress compress file data during the transfer
-n, --dry-run perform a trial run with no changes made
-p, --perms preserve permissions
-E, --executability preserve executability
--chmod=CHMOD affect file and/or directory permissions
Run Code Online (Sandbox Code Playgroud)
-p, --perms 此选项使接收 rsync 将目标权限设置为与源权限相同。(另请参阅 --chmod 选项,了解修改 rsync 认为的源权限的方法。)
手册页接着说:
总之:要为目标文件(旧的和新的)提供源权限,请使用 --perms。要为新文件提供目标默认权限(同时保持现有文件不变),请确保 --perms 选项关闭并使用 --chmod=ugo=rwX (这可确保启用所有非屏蔽位)。
旁注:如果可能的话,对于开发人员来说,将他们的更改推回存储库并让所有服务器使用代码存储库,而不是使用 rsync 将文件从一台服务器传送到另一台服务器可能更有意义。
例子:
rsync -avz --no-perms --no-owner --no-group /local-dir/ my-server:/remote-dir/
Run Code Online (Sandbox Code Playgroud)
这将禁用同步权限、所有权和组。
| 归档时间: |
|
| 查看次数: |
24222 次 |
| 最近记录: |