我正在使用 CwRsync 從我的 Windows 開發電腦連接到 Linux 網路伺服器:
rsync -avuz -e ./ssh --exclude=".svn" /cygdrive/c/xampp/htdocs/project123/ [email protected]:/home/user123/public_html
這可以將我的開發專案目錄很好且快速地同步到伺服器。
但執行此操作後,所有目錄屬性都將重置為僅本地用戶user123
,因此該網站不再可用。我需要手動重置這些屬性。
為什麼會發生這種情況,以及如何預防?
附言。來自 Windows 環境,我很難理解 rsync。我從一些例子複製了上面的命令...只需要讓這一件小事也能工作...
答案1
這取決於您所說的“屬性”是什麼意思。
權限?
-p
( )選項--perms
應該保留它們。不過,它在使用時會自動啟用-a
,因此如果權限遺失,可能是由 CwRsync 本身引起的。確保(使用 Cygwin 的
ls
和chmod
)當地的權限是正確的。或者,嘗試該--no-perms
選項。所有權?在 Unix 系統上,使用者不允許更改檔案所有權。如果您登入
user123
並建立文件,該文件將歸user123
, 擁有。類似的限制也存在於團體中——你能更改文件的群組,但前提是您自己位於該群組中。還有別的事嗎?