我有兩臺裝有VMware Server的雙胞胎CentOS 5.4服務器。遠程linux服務器到遠程linux服務器大型稀疏文件複製 - 如何?
假設我總是對我的VMware虛擬機使用稀疏文件,將虛擬機文件從一臺服務器複製到另一臺服務器的最可靠和最快速的方法是什麼?
由於vm的文件非常大(50 GB),因此它們很難複製,但由於它們是稀疏文件,我認爲可以採取一些措施來提高複製速度。
我有兩臺裝有VMware Server的雙胞胎CentOS 5.4服務器。遠程linux服務器到遠程linux服務器大型稀疏文件複製 - 如何?
假設我總是對我的VMware虛擬機使用稀疏文件,將虛擬機文件從一臺服務器複製到另一臺服務器的最可靠和最快速的方法是什麼?
由於vm的文件非常大(50 GB),因此它們很難複製,但由於它們是稀疏文件,我認爲可以採取一些措施來提高複製速度。
您是否試過rsync與選項--sparse
(可能通過SSH)?
從man rsync
:
Try to handle sparse files efficiently so they take up less space on the destination. Conflicts with --inplace because it’s not possible to overwrite data in a sparse fashion.
如果你想快速複製大量數據,rsync
通過SSH是不適合你。由於運行一個rsync
守護進程以進行快速一次性複製也是一種矯枉過正的行爲,因此您可以按照以下步驟操作謎題:tar
和nc
。
創建,這將有助於在網絡文件的過程:
tar cSf - /path/to/files | nc -l 5000
注意,它可能需要tar
很長的時間來檢查稀疏文件,所以這是正常的,看到一段時間內沒有進展。
並在另一端的下面接收文件:如果你想獲得的所有花哨,使用pv
顯示進度
nc hostname_or_ip 5000 | tar xSf -
另外,:
tar cSf - /path/to/files \
| pv -s `du -sb /path/to/files | awk '{ print $1 }'` \
| nc -l 5000
等一會兒,直到看到pv
報告有些字節已經過去,然後在另一端啓動接收器:
nc hostname_or_ip 5000 | pv -btr | tar xSf -
感謝您的代碼片段 - 非常有用,scp是愚蠢的慢:) – pahoughton 2014-04-29 21:19:33
@pahoughton,沒問題,很高興成爲幫助:) – mrts 2014-06-23 13:13:21
你可以看看http://www.barricane.com/virtsync
(聲明:我是作者)
由於rsync
是在複製稀疏文件非常慢,我通常會訴諸使用tar
超過ssh
:
tar Scjf - my-src-files | ssh [email protected] tar Sxjf - -C /the/target/directory
注意:海報問及CentOS機器,因此可能不需要Solaris破解位。 – 2009-12-11 08:49:36
真(刪除那一點),好點。 – ChristopheD 2009-12-11 08:51:10
請注意,在複製稀疏文件時,rsync非常慢。 – 2013-07-16 19:29:33