(cw)rsync 3.0.0 incompatible with 2.6.9

Matt McCutchen matt at mattmccutchen.net
Wed Mar 12 15:46:41 GMT 2008


On Wed, 2008-03-12 at 16:02 +0100, Mojca Miklavec wrote:
> I have updated the windows binary for rsync to 3.0.0 (cwrsync), and
> now I get the following error:
> 
> receiving file list ... rsync: on remote machine: --iconv=.: unknown option
> rsync error: requested action not supported (code 4) at clientserver.c(685) [sen
> der=2.6.9]
> rsync: read error: Connection reset by peer (104)
> rsync error: error in rsync protocol data stream (code 12) at io.c(768) [receive
> r=3.0.0]

It looks like cwRsync 3.0.0 was configured with an iconv setting of
"." , which is incompatible with pre-3.0.0 rsync versions.  This issue
is specific to cwRsync; the default configuration for rsync has no iconv
setting.  To access a pre-3.0.0 server with cwRsync 3.0.0, you can
either set the environment variable RSYNC_ICONV to "-" (a single hyphen)
or pass --no-iconv .

> The server is running on Debian stable, so sooner or later people will
> start using the new incompatible version before we upgrade the system.
> Is manual install of a newer version of rsync on the server really the
> only option?

I can think of four options:

1. Replace the server's current rsync with a manually installed rsync
3.0.0.

2. Install rsync 3.0.0 in a non-default location and have cwRsync 3.0.0
users request it via --rsync-path.

3. Have cwRsync 3.0.0 users pass RSYNC_ICONV=- or --no-iconv .

4. Build your own Cygwin rsync (which will have no iconv setting by
default) and use that instead of cwRsync 3.0.0.

> On the other hand - if I install 3.0.0 now, then I
> probably won't be able to sync from any other server. It seems like
> there is no way out of the cycle.

If you install ordinary rsync 3.0.0 on the server, it won't have a
default iconv setting, so it should communicate just fine with older
versions of rsync.  Let us know if it doesn't.

Matt



More information about the rsync mailing list