如何使用rsync維護遠端克隆目錄?

如何使用rsync維護遠端克隆目錄?

我可以透過 SSH 存取遠端電腦(使用 SSH 金鑰對)。我想在遠端電腦上保留一個與給定本機目錄完全相同的目錄(單向同步)。檔案相等性檢查應基於二進位檔案內容的雜湊值(而不是大小/日期)來完成。

  1. 正確的 rsync 指令是什麼(不是 rsync 服務)?
  2. 文件權限如何處理?
  3. 如何處理文件修改日期?
  4. rsync 對失敗如何反應以及退出程式碼是什麼?

答案1

Rsync 檢查檔案的內容,而不是日期和/或檔案大小。如果內容不同但路徑和名稱相同,則檔案將被覆蓋。

rsync 的語法是rsync options source destination這樣的,如果你想讓遠端目錄與本機目錄保持同步,這應該可以解決問題:

rsync -azh local_folder user@remote_server:/path/to/destination/

如果你想使用 SSH 作為傳輸協議,那麼這對我有用:

rsync -azhe ssh local_folder user@remote_server:/path/to/destination

文件權限如何處理?如何處理文件修改日期?

a參數保留符號連結、檔案權限、時間戳...如果您不想傳輸此訊息,只需將其從命令中排除即可,它將由您登入 SSH 會話的使用者擁有。

rsync 對失敗如何反應以及退出程式碼是什麼?

大多數命令/程式在成功時傳回 0,在錯誤時傳回任何其他數字。這是 rsync 退出程式碼的列表以供參考

相關內容