![如何有效更新大型二进制文件的副本](https://linux22.com/image/1269143/%E5%A6%82%E4%BD%95%E6%9C%89%E6%95%88%E6%9B%B4%E6%96%B0%E5%A4%A7%E5%9E%8B%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%96%87%E4%BB%B6%E7%9A%84%E5%89%AF%E6%9C%AC.png)
我有一个大文件(~20 GB,Windows XP 的 VirtualBox VM),我想将其克隆到第二台计算机,然后与主计算机保持单向同步。
是否有一种通用的方法可以仅更新二进制文件中已更改的部分?
如果没有通用工具,是否有针对 VirtualBox 执行此操作的特定方法?
答案1
那么,怎么样rsync
?它默认使用块增量传输算法。
答案2
我刚刚用增量
这将创建一个 diff 文件,其他人可以从服务器下载该文件以在本地应用。比 rsync 更麻烦,但您可以使用此方法,而不必授予您的 box 用户访问 rsync 服务器的权限。
在我的 mint(debian)计算机上进行简单安装,并且运行良好:
sudo apt-get install xdelta
然后获取详细信息
man xdelta
为了做出区分,非常简单:
xdelta delta b4.2.box b5.0.box b4.2.to.5.0.patch
显然使用了 rsync 算法