rsync's usage of ssh

Matthias Schniedermeyer ms at
Sat Apr 12 15:07:51 MDT 2014

On 12.04.2014 20:48, a. wrote:
> I am trying to understand how rsync uses ssh. From what I understand of
> the source, it simply opens a ssh connection and then simply pipes
> rsync's data. But somehow my stomach tells me that this is not the whole
> story.
> For one, that would mean the whole (?) of rsync's protocol is only used
> for not-ssh transmission. The biggest question for me right now is,
> whether rsync, when transmitting remotely over ssh, is binding sockets
> of some kind or if it is completely dependent on ssh for that.
> For every bit of enlightenment in this regard I am very grateful!

rsync always works with 2 processes connected by a bidirectional 
connection, even when run localy.

Rsync can use any method that provides such a bidirectional connection. 
Using ssh is only the "standard" way to do it.

rsync is either used like this:
Locally: rsync a <-> rsync b
Or like this:
Remote: rsync a <-> connector (e.g. ssh) <-> rsync b

<-> means a bidirectional connection.

Specifically or in effect it means that STDOUT from a is connected to 
STDIN from b and vice versa.



More information about the rsync mailing list