Networking

rsync –block-size 對大文件有什麼影響?

  • January 12, 2018

我想通過 rsync 將幾 TB 的大文件(每個 500mb 到 1500mb)備份到備份伺服器(大容量儲存)。

為此,我使用以下命令(根據@Gilles 的建議進行了更新):

rsync --stats --progress --ignore-existing --recursive --exclude ".*" /from/ /to

rsync --stats --progress  --archive --update --exclude ".*" /from/ /to 

我的傳輸速度約為 40MB/s。我認為這個速度受到線路另一站點上的 BULK 儲存系統的限制。(SSD –> 1000mbts/s –> 大容量儲存)

我知道我將主要同步大文件,指定塊大小以加快傳輸速度是否有用?如果它確實加快了我的傳輸速度,它會合理更多嗎?

--block-size是rsync的delta傳輸算法的一個參數,即它的基於塊校驗和的部分傳輸算法。由於您正在執行本地副本,因此不使用增量傳輸算法,因此--block-size被忽略。增量傳輸算法在本地副本上的結果更差(這就是它預設關閉的原因),因為 rsync 然後需要讀取目標端的所有文件。當任一側的磁碟訪問速度明顯快於兩側之間的網路連接時,它很有用。

考慮到文件系統成本,40MB/s 的文件 I/O 大約是 400Mb/s 的原始磁碟 I/O。你確定雙方都能承受更多嗎?

您通常應該使用rsync -a, 來保留所有文件模式。對於備份,絕對使用-a. 添加-u標誌以免浪費時間複製未修改的文件(除了-a:-u如果您不保留時間,則無用)。

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