CentOs 6,大檔案的rsync/scp停止在40%(2.4G)

CentOs 6,大檔案的rsync/scp停止在40%(2.4G)

我試圖從遠端伺服器下載一個大檔案(~5G)到本地筆記型電腦,但下載到檔案大小(2.4G)的 40% 時停止。

我正在使用這個 rsync 命令:

rsync --bwlimit=1200 -rh --progress -e 'ssh -p port' server:/path/to/file Downloads/

我還嘗試將伺服器上的 mtu 從 1500 降低到 1492,但沒有成功。

有什麼建議麼? :D

答案1

我不認為這是網路問題。

更有可能是內存問題。由於伺服器只有 2GB RAM 並在 5G 檔案上運行 RSYNC,我首先會懷疑伺服器。您可以在運行伺服器時監視伺服器記憶體。

客戶端也可能有問題。例如,我放棄了 Windows 的 RSYNC,因為無論你有多少 RAM,它總是在處理大檔案時崩潰。

我不得不質疑 rsync 是否是處理如此大檔案的正確工具。當然,這取決於文件​​,但除非任何更新都適合 rsync 的 diff 引擎,否則可能沒有意義。直接轉移可能會更好。您甚至可以使用 zip 或 tar 之類的工具來拆分文件,以便可以將其分成幾部分發送並在另一端重新組裝。

答案2

請嘗試以下操作:

  • 將 MTU 降低到 1492

須藤 ifconfig eth0 mtu 1492

  • 停用 TCP SACK

sudo sysctl -w net.ipv4.tcp_sack=0

相關內容