Windows 上的 rsync - 远程文件夹中的权限设置不正确

wen*_*ert 2 windows cygwin rsync

我有一个小问题。我在 Window 中使用了 rsync (Cygwin),但在我的远程文件夹中同步的文件不正确。

rsync -r /cygdrive/c/xampp/htdocs/mysite/* me@mysite.com:/home/mysite/public_html/
Run Code Online (Sandbox Code Playgroud)

现在,我使用 rsync 上传文件,但是我已经进入远程目录并自己手动更改文件/文件夹权限。

rsync 是否可以选择 CHMOD 等?

谢谢,温伯特

编辑:我希望文件为 644 等。

Lar*_*man 5

Cygwin 不理解 NTFS ACL 并且无法复制它们。使用 rsync 在远程端你总是会得到愚蠢的权限。

我使用过或听说过的两种解决问题的方法是:

  1. 定期在远程服务器上运行修复脚本,使用 cacls.exe 或其某些变体来更正 ACL。这种技术的缺点是您的脚本需要保持最新,否则目标端的权限将与源不匹配。这很难维持。
  2. 使用 robocopy.exe 运行跟踪您的 rsync 运行,但仅使用 robocopy 将 NTFS ACL 从源复制到目标。这要求您能够使用 SMB 共享或类似技术连接到目标服务器,这意味着您支持 cygwin/rsync/ssh 和 SMB 共享。