Help understanding rsync and cwrsync

Tevfik Karagülle tevfik at
Thu Mar 2 07:56:09 GMT 2006

> Hi all,  we are just beginning to dive into rsync. I have 
> limited experience with just playing around with the examples 
> and reading all the docs that I can.  I just read an 
> interesting post from a developer that mentions cwrsync is a 
> minimalistic rsync and thus things like permissions are not 
> transfered, the post was from 2004.  Here are my questions

I called cwrsync as minimalistic because it offers rsync functionality on cygwin only. A full-blown
cygwin gives you an almost complete linux-like working environment. In all other aspects, cwrsync is
same as rsync on cygwin. That applies also to issues around permissions.

> 1)  Should we abandon cwrsync for cygwin + rsync?  Have the 
> disparities between the two versions been resolved?

There are no disparities. Cwrsync and cygwin+rsync have the same behaviour, same executables and
same dlls.

> 2)  What are the risks with using cwrsync (we want a limited footprint on the client)?

Rsync itself is a well-proven solution and is actively maintained. Cwrsync package has a very small
footprint in comparison to the full cygwin and that reduces your vulnerability surface.

> 3)  Assuming we use straight cygwin + rsync how does the 
> linux rsync server handle the permissions and ACL's of an 
> NTFS files system?  Are they restorable back to a windows 
> machine?  The linux server won't have any of the users plus 
> the ACLS stuff is totally different that unix.

I don't think that rsync on cygwin can be too much of help to address ACL-issues between unix and
windows machines. You should experiment with following scenarios to find out what is actually
possible to achieve:

1. Use rsync options -g -o -p (preserve group,ownership and permissions)

2a. Start rsync on windows after having 'CYGWIN=ntsec' set. That allows cygwin to map linux
permissions to windows ones. NB! Try this in a test environment. You may end with a filesystem with
permissions somewhat different than what you expect.

2b. Use 'CYGWIN=nontsec' instead. That's the recommended way for cwrsync users. No mapping occurs.
Cwrsync package has a batch file example for it.

Best regards


Cwrsync maintainer

> --
> What profits a man if he gains the whole world yet loses his soul?
> --
> To unsubscribe or change options: 
> Before posting, read: 

More information about the rsync mailing list