当源和目标都是远程时,rsync会抱怨:
The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1156) [Receiver=3.0.7]
使rsync做到这一点有不可克服的技术障碍吗?还是仅仅是尚未实施的一种情况?在内存中创建一个本地缓冲区似乎很容易,该缓冲区可以调理两个远程对象之间的传输,同时保存哈希和数据。
编辑
由于人们提出了一些切线的建议,因此我发布了一个单独的问题,详细说明了我的特定用例。实际上,这是两个独立的部分,我认为值得了解rsync的这些特定细节
1
它将涉及到一个远程src rsyncd将数据发送到一个远程dest rsyncd。您可以通过切换到src系统并调用rsync来解决此问题。
—
亚历克斯·霍尔斯特
@AlexHolst我认为这不适用于我的特殊情况。看到编辑
—
goncalopp 2012年
抱歉(主持人),这是一个有趣的有趣问题:原因是rdiff算法不能对称。“活动”端需要更大的CPU和内存开销。“被动”端仅需要计算所有已修改文件的所有块的校验和(请参阅--block-size参数),然后重新发送它们。这是在非常小的内存需求下完成的,并且大多数操作都可以在一级CPU缓存中完成。“主动”端需要通过校验和搜索现在位于同一数据块的位置...
—
hynekcer
我认为这是一个很好的问题(我恰好有这个问题,这就是为什么我在这里),而结束的原因是虚假的。我仍然想知道答案!
—
reinierpost