Networking
rsync –block-size 對大文件有什麼影響?
我想通過 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
如果您不保留時間,則無用)。