Rsync

使用 rsync 在兩個方向同步目錄

  • December 6, 2020

我碰巧知道 rsyn,我使用 rsync 在我的 mac 和 linux 伺服器之間進行同步,如下所示。

rsync -r -t -v MAC LINUX
rsync -r -t -v LINUX MAC

我希望執行第一個命令來同步,但是當在 LINUX 中進行更改時,我也需要第二個命令。

我錯過了什麼嗎?rsync 是否可以選擇在兩個目錄之間進行同步?

你想要雙向同步。看看 unison,它是這樣做的:http ://www.cis.upenn.edu/~bcpierce/unison/

例如,在 Debian/Ubuntu 上:

$ sudo apt-get install unison
$ unison MAC/ LINUX/

如果您遇到權限問題(例如 ext4 -> FAT):

$ unison -perms 0 vlc-2.2.0/ /media/sf_vlc/vlc
Contacting server...
Looking for changes
Reconciling changes

vlc-2.2.0      vlc                
new dir  ---->            /  [f] 

Proceed with propagating updates? [] y
Propagating updates

有人聲稱 rsync 不被其開發人員推薦用於雙向同步,但缺乏該聲明的來源。

已經推薦的統一實用程序將為您提供更好的解決方案。

還要記住,在使用 rsync 時,您可能必須處理很多 Mac 特定的 HFS+ 內容。因此,請務必在 Mac 上使用正確修補的 rsync3,否則會出現修改日期問題(使用 Mac OS X 時提供的 rsync 2.6.9。)如果您不知道如何為 Mac 建構正確修補的 rsync 3,獲取 mlbackup ,其中包括。(完全披露:我是 mlbackup 的作者。)從 github 獲取它,並確保從下載中下載完整的包。(在這種情況下,mlbackup 儲存庫不包括您想要的 rsync 3。) http://github.com/MacLemon/mlbackup

引用自:https://unix.stackexchange.com/questions/12197