This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Rsync over SSH dies before it is able to send with lots of files
- From: "Bob Brown" <bob at smsolutions dot co dot nz>
- To: cygwin at cygwin dot com
- Date: Wed, 10 Aug 2005 13:58:52 +1200
- Subject: Rsync over SSH dies before it is able to send with lots of files
Hi All,
I've had this problem for the last week. I installed the cygwin package on
my WinXP and also on a Win2k server fresh from Cygwin.com (and associated mirrors). I configured an rsync server in the
first instance and configured a rsync module as follows:
(from rsyncd.conf)
use chroot = false
strict modes = false
log file = /var/log/rsyncd.log
[mydirectory]
read only = true
path = E:/path_to_files
I then installed the rsync service and was able to rsync all files from this
'mydirectory' module using the following:
rsync --progress -rtv 192.168.0.1::mydirectory/* c:\localcopy
I then wanted to do this using ssh ... as I understand it you don't need to
run an rsync server to copy files using ssh, and there are no performance
disadvantages in not running a server. I stopped the rsync server and my
command to rsync has changed slightly:
rsync -e ssh --progress -rtv user@192.168.0.1:/cygdrive/e/testdirectory/*
c:\localcopy
I'm asked for the password and the copy proceeds as usual.
But, here's where it gets interesting .... the directory that I want to rsync
has got 45,000 files in it. When rsyncing from this dir, the rsync on the
server end fails. After digging further, I discovered that bash on the server
end dies with a stackdump (see below). I can avoid this by copying less
files with a wildcard (eg. 12*, 13* etc), however this shouldn't be
necessary. There are no rsync logs generated on the server when this
happens....
This is the client side:
C:\Documents and Settings\Bob>rsync --progress -vtr
user@192.168.0.1:/cygdrive/e/path_to_files/* c:\localcopy
advance@192.168.2.2's password:
rsync: read error: Connection reset by peer (104)
rsync error: error in rsync protocol data stream (code 12) at io.c(515)
There are no log entries made on the server regarding rsync, only the
bash.exe.stackdump (I can delete it and it gets recreated each time this
rsync fails)
It seems to come down to the number of files that are transferred at one
time ... although the same rsync worked fine with the rsync server setup
with the mydirectory module!
I've tried the following:
- Compiled rsync 2.6.3 (instead of the 2.5.6 that came with cygwin)
- Mounted /usr/bin with the -x (executable) flag
- Mounted the directory that I'm copying from elsewhere and made it
executable (worth a crack)
- Reinstalled Cygwin completely.
If anyone can shed any light on this problem I'd love to hear from them.
Here's that bash.exe.stackdump
bash-3.00$ cat bash.exe.stackdump
Exception: STATUS_ACCESS_VIOLATION at eip=610022AE
eax=61259000 ebx=61259000 ecx=FFFF0000 edx=61259048
esi=00000006 edi=0022E810
ebp=0022DC08 esp=0022DC00 program=C:\cygwin\bin\bash.exe, pid
2748, thread main
cs=001B ds=0023 es=0023 fs=0038 gs=0000 ss=0023
Stack trace:
Frame Function Args
0022DC08 610022AE (00000012, 00000000, 0022DC28, 0022E820)
0022DC38 610022E8 (100E4F30, 6111F3A5, 00000001, 0000002B)
0022DC58 610029C3 (0022E810, 6111F3A5, 00000001, 00000000)
0022E998 6108C487 (00000003, 0CE11EE4, 415C95DE, 000F4240)
0022E9C8 6108D325 (00000003, 10013FB0, 101988A8, 10198088)
0022E9E8 6101858B (10013FB0, 101988A8, 10198088, 61087077)
0022EAD8 610844FF (10013FB0, 101988A8, 10198088, 00000000)
0022EB78 004109DB (10013A58, 00000000, FFFFFFFF, FFFFFFFF)
0022EC58 0043F197 (10013608, 00459111, 00000004, 00000000)
0022EC78 00401592 (00000003, 00000000, 0046EDD4, 00401E54)
0022EF18 004033E1 (00000003, 611576B0, 10010090, 77F81F55)
0022EFD8 61004DD2 (0022EFF0, 00000000, 0022F320, 00231EC0)
0022FF88 6100594F (00000000, 00000000, 00000000, 00000000)
End of stack trace
Cheers,
- Bob -
--
Bob Brown, bob@smsolutions.co.nz
SmartMedia Solutions, Dunedin NZ
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/