Why it's not possible to use two remotes for rsync?

goncalopp asked:

When both source and destination are remote, rsync complains:

The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1156) [Receiver=3.0.7]

Is there a insurmountable technical obstacle to making rsync do this? Or it’s simply a case of it’s-not-yet-implemented? It seems relatively easy to create a local buffer in memory that mediates the transfer between two remotes, holding both hashes and data.

EDIT

Since people are making some tangent suggestions, I’ve posted a separate question about my particular use case. These are two separate, really, and I think it’d be worthwhile to know these particular details for rsync

My answer:


You can work around this by mounting one (or both) of the remote filesystems with sshfs. Then, rsync will treat it as if it were local.

Unfortunately, this will result in a lot of bandwidth usage on the machine whose filesystem is mounted with sshfs, so I would recommend only doing this with the machine that has a lot of bandwidth between you and the third machine.

Of course, the ideal solution is for the machines to talk directly to each other. I can’t think of any good reason why they should not.


View the full question and answer on Server Fault.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.