Windows
Windows 上的 rsync - 遠端文件夾中的權限設置不正確
我有一個小問題。我在 Window 中使用 rsync (Cygwin) 並且在我的遠端文件夾中同步的文件不正確。
rsync -r /cygdrive/c/xampp/htdocs/mysite/* me@mysite.com:/home/mysite/public_html/
現在,我使用 rsync 上傳文件,然後我進入遠端目錄並自己手動更改文件/文件夾權限。
rsync 是否可以選擇 CHMOD 等?
謝謝,溫伯特
編輯:我希望文件是 644 等。
如果您想在目的地強制使用權限,您需要使用
--chmod
選項和/或--perms
選項。
--chmod
覆蓋源權限(即 rsync 假裝源權限是您指定的任何內容,而不是實際的內容)--perms
(或-p
)將源權限強製到目標伺服器例如:
rsync --chmod=a=r,u+w,D+x -p -r /cygdrive/c/xampp/htdocs/mysite/* \ me@mysite.com:/home/mysite/public_html/
您沒有提到 cygwin 認為源權限是什麼(即
ls -l /cygdrive/c/xampp/htdocs/mysite/*
在 cygwin 中)或實際權限最終在目標端是什麼。如果我們知道這一點,就有可能建構一些更簡單的東西。要全面了解各種選項,請參閱非常詳細的rsync 手冊頁。
請注意,rsync 還不支持八進制權限(例如
--chmod=644
)。根據這篇文章,rsync 3.1.0 將提供對此的支持。