Hi,
I'm having trouble getting a backup to complete successfully. I am
using BackupPC v2.1.2 on a Debian Sarge (3.1) box, and attempting to use
the rsync XferMethod to back up a WinXP box running Cygwin, rsync
v2.6.6, and sshd (OpenSSH_4.3p2). I'm hoping to get some pointers and
suggestions on how to go about debugging this further. I'll apologize
in advance for the forthcoming novella.
When I attempt a backup, it fails reliably with:
2006-04-13 23:05:37 host: finish: removing in-process file Program
Files/3DO/Support/Autorun.BMP
2006-04-13 23:05:37 host: Child is aborting
2006-04-13 23:05:37 host: Parent read EOF from child: fatal error!
2006-04-13 23:05:37 host: Sending csums, cnt = 49673, phase = 1
2006-04-13 23:05:37 host: Done: 140 files, 1285853 bytes
2006-04-13 23:05:38 host: Got fatal error during xfer (Child exited
prematurely)
I've also noticed that it leaves "zombie" rsync.exe and corresponding
sshd.exe processes on my WinXP box.
I've tried to modify rsync on the client and recompile with various
suggested changes I found on the 'net, but nothing has had an impact so
far. For instance, Craig Barratt mentioned an issue with signals and
msleep() back in 2003, and I tried that workaround described in
http://www.mail-archive.com/rsync@lists.samba.org/msg07402.html just in
case. At one point I also tried rsync v2.6.7, but I backed down again
since it made no positive impact. I've read through the likely-looking
sections in the docs, and read the FAQs on sourcegforge.net.
I set $Conf{XferLogLevel} = 3; and $Conf{RsyncLogLevel} = 3; in my
config.pl. I've added my own debug logging down in
.../lib/BackupPC/Xfer/Rsync.pm, just to verify that the correct command
line and options are being used. It all looks great to me. The command
being issued by BackupPC is:
/usr/bin/ssh -q -x -l user host /usr/bin/rsync --server --sender
--numeric-ids --perms --owner --group --devices --links --times
--block-size=2048 --recursive --exclude=/Documents\\\ and\\\ Settings
--exclude=/MSOCache --exclude=/RECYCLER --exclude=/System\\\ Volume\\\
Information --exclude=/temp --exclude=/tmp --exclude=/WINDOWS/Temp
--exclude=/WINDOWS/\\\$\\\* --timeout=600 --ignore-times . /cygdrive/c/
I've verified that I can log in via ssh as 'user' to 'host', which is
also evidenced by the fact that I get a file list and do get 140 files.
I've futzed with ClientTimeout in my config.pl as well as the
--timeout option to rsync, but haven't had any impact beyond cutting
backups off early if I set a very short timeout.
I've verified that I have plenty of disk space (>60GB) on the Linux
box, permissions appear correct, CGI user appears correct, correct
config.pl files are being read. Whether the Windows firewall is on or
off seems to make no difference, and no dropped packets show up in the
firewall log. I am running an iptables-based firewall script on the
Linux box, but haven't seen anything in the logs. I tried various
exclusion lists (and no exclusions) in the rsync command. I know, much
of this seems like a "stretch" to try, but when you're stuck...
Searching the 'net has turned up a number of individuals with
similar-sounding issues, but no solutions that seem to fit me thus far.
I've also not seen any broad proclamations that what I am attempting
cannot be done, so I am determined to keep trying.
I've got perl 5.8.4 on the Linux box, and installed File::RsyncP
v0.52. There are a couple of things in the perldoc that disturb me:
"It is compatible with Rsync 2.5.5(protocol version 26)."
- Does this mean precisely what it says? Or should I reasonably expect
that rsync versions after 2.5.5 should work as well?
"File::RsyncP does not yet implement server functionality (acting
like the remote end of a connection or a daemon). Since the protocol is
relatively symmetric this is not difficult to add, so it should appear
in a future version."
- Is this a dated comment? Does anyone know if this is still true?
One thing I have not been able to figure out so far, is how to get
more info from rsync. Since I've never used rsync before, it may well
be a "D'Oh!" thing I am doing, I dunno. For instance, I can verify ssh
operation by issuing a manual command from the Linux box, but I don't
see how to issue a manual 'rsync --server --sender ...' command from the
WinXP box. In fact, I'm not even sure it's possible, because I don't
understand the underlying operation of rsync over ssh.
For those of you who have read this far (my hat's off to your
stamina), thank you in advance for any suggestions or pointers you can
provide.
Brian
-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
BackupPC-users mailing list
BackupPC-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/backuppc-users
http://backuppc.sourceforge.net/