Linux
Rsync 是否允許雙向同步文件?
我已經使用 rsync 和 cygwin 備份了一個 linux Web 伺服器。我現在在我的 Windows 筆記型電腦上有一個完美的伺服器副本。如果我刪除或修改筆記型電腦上的文件並使用 cygwin 再次執行 rsync,它會刪除/更新伺服器上的相同文件嗎?我的印像是,如果我在伺服器上刪除/修改並在我的筆記型電腦上執行 rsync,它將刪除/修改我筆記型電腦上的本地文件,但這會反過來嗎?
Rsync 進行單向同步,但是由您決定同步的方式。
rsync 命令語法如下:
rsync [OPTION...] SRC... [DEST]
請注意,您指定從源到目標的同步。源和目標可以是任何本地或遠端路徑。
例如,如果您想將文件從伺服器複製到筆記型電腦,您可以:
rsync [OPTION...] <server-path> <laptop-path>
要在相反方向同步,您可以:
rsync [OPTION...] <laptop-path> <server-path>
所以回答你的問題:這取決於你如何執行 rsync。
如果要在目標上刪除文件,則需要使用
--delete
選項。但要小心,因為如果您在指定來源時犯了錯誤,那麼您最終將刪除目的地上的所有內容。首先在沒有選項的情況下測試同步會更安全--delete
,一旦您對它的工作方式感到滿意,您就可以添加--delete
選項。正如masegaloeh在下面的評論中所建議的那樣,
-n
或者--dry-run
選項也可用於測試rsync
命令行為。