Behaviour that I don't understand

Alan Chandler alan at
Wed Aug 2 22:28:10 GMT 2006

I am trying to set up rsync as a daemon under WindowsXP (professional) in 
order to be able to backup this machine on to a linux server.  I am 
struggling with an issue I don't understand.  I don't know whether it is an 
Rsync issue or a Cygwin issue, so I am asking both mailing lists.

My WindowsXP machine has ip address and name rabbit.home

My Linux machine has ip address and the name roo.home

Rsync has been installed as a daemon using cygrunsrv to set up a service using 
the following command 

cygrunsrv.exe -I "Rsync" -p /cygdrive/c/cygwin/bin/rsync.exe -a "--config=/cygdrive/c/cygwin/etc/rsyncd.conf --daemon --no-detach" -f "Rsync 
daemon service"

The /etc/rsyncd.conf file has the following in it 

chroot = false 
strict modes = false
hosts allow =

path = /cygdrive/c
comment = the complete c drive

path = /cygdrive/c/Documents and Settings/ChandlerA
comment = Alan's specific user space

Using a cygwin bash shell on the windows machine AND from a shell prompt on my 
linux machine I can do

either (from windows machine)
rsync localhost::
or (from linux machine)
rsync rabbit::

at list out the two modules (system and alan)


If I try to list the contents of either module from local host (thus)

rsync localhost::system

it works, but if I list the contents via

rsync rabbit::system
(either remotely or locally)

then I get 

@ERROR: access denied to system from roo.home (
rsync: connection unexpectedly closed (0 bytes received so far) [receiver]
rsync error: error in rsync protocol data stream (code 12) at io.c(420)

I have tried playing with the hosts allow parameter.  The ONLY form (including 
removing the hosts allow line altogether) that I can make work is

hosts allow = *

If I do that it works

Why is it that this form of hosts allow is needed.  The manual says that if 
the hosts allow is not present it should allow all hosts - but it doesn't 
seem to.

Alan Chandler

More information about the rsync mailing list