Rsync

使用 rsync over SSHFS 或 CIFS 作為遠端儲存庫是否更好,沒有 rsyncd 選項?

  • April 15, 2015

我有一個只能支持 CIFS、AFS、SSH(沒有 rsyncd 功能,沒有 NFS)的 NAS。

我必須備份非常大的文件(vm 映像),我通常在備份設備上設置一個 rsync 伺服器,然後我rsync --inplace只傳輸大文件的塊級增量。這適用於 rsyncd。

對於 CIFS,它似乎必須在將其全部複製之前讀取所有目標文件和本地文件**(**整個內容,而不僅僅是增量).. SSHFS 會更好嗎?

還有其他方法可以在沒有 rsyncd 的情況下僅移動塊增量嗎?

sshfs 對此無濟於事;你需要做的是添加一個-W選項來告訴 rsync 只傳輸整個文件,而不是試圖找出具體的差異在哪裡。您可能還需要刪除--inplace(不確定)。

rsync 實際上是為遠端操作而設計的,其中每台電腦上都有一個 rsync 實例(或守護程序),每個電腦都有一個快速連結到其磁碟,但 rsync 實例之間的連結很慢。在您的情況下,慢速連結位於“遠端”rsync 及其磁碟之間,因此需要一組不同的優化選擇。具體來說,rsync 通常預設讀取整個源文件和目標文件,因此它可以確定哪些部分需要通過“慢”中間連結傳輸;在您的情況下,它會減慢它的速度,而不僅僅是盲目地傳輸整個文件。

此外,請確保您有-t選項(或-a,這意味著-t),並且沒有使用-c. -c會讓它讀取整個文件,看看它是否發生了變化;沒有它,它只會查看-t(和-a)保留的文件大小和修改時間。

引用自:https://serverfault.com/questions/682546