我有两台双胞胎 CentOS 5.4 服务器,每台都安装了 VMware 服务器。
假设我总是为我的 vmware 虚拟机使用稀疏文件,那么将虚拟机文件从一台服务器复制到另一台服务器的最可靠和最快速的方法是什么?
vm 的文件很难复制,因为它们非常大(50 GB),但由于它们是稀疏文件,我认为可以采取一些措施来提高复制速度。
我有两台双胞胎 CentOS 5.4 服务器,每台都安装了 VMware 服务器。
假设我总是为我的 vmware 虚拟机使用稀疏文件,那么将虚拟机文件从一台服务器复制到另一台服务器的最可靠和最快速的方法是什么?
vm 的文件很难复制,因为它们非常大(50 GB),但由于它们是稀疏文件,我认为可以采取一些措施来提高复制速度。
如果您想快速复制大数据,rsync
SSH 不适合您。由于运行一个rsync
用于快速一次性复制的守护进程也太过分了,老兄tar
,nc
请按照以下步骤操作。
创建将通过网络提供文件的进程:
tar cSf - /path/to/files | nc -l 5000
请注意,tar
检查稀疏文件可能需要很长时间,因此有一段时间看不到任何进展是正常的。
并在另一端接收具有以下内容的文件:
nc hostname_or_ip 5000 | tar xSf -
或者,如果您想获得所有幻想,请使用pv
显示进度:
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 -
您是否尝试使用rsync选项--sparse
(可能通过 ssh)?
来自man rsync
:
尝试有效地处理稀疏文件,以便它们占用更少 目的地的空间。与 --inplace 冲突,因为它是 无法以稀疏方式覆盖数据。
由于rsync
复制稀疏文件非常慢,我通常使用tar
over ssh
:
tar Scjf - my-src-files | ssh sylvain@my.dest.host tar Sxjf - -C /the/target/directory
你可以看看http://www.barricane.com/virtsync
(免责声明:我是作者。)