I went with plain text. I hope this is more readable.
Invocation, as it is happening on the server:
/usr/local/bin/rsync_bpc \
--bpc-top-dir\
/vol0/www/STUFF.databit7.com/data/\
--bpc-host-name\
phantom.databit7.com\
--bpc-share-name\
/home/administrator\
--bpc-bkup-num\
0\
--bpc-bkup-comp\
3\
--bpc-bkup-prevnum\
-1\
--bpc-bkup-prevcomp\
-1\
--bpc-bkup-inode0\
5\
--bpc-log-level\
1\
--bpc-attrib-new\
-e\
"/usr/bin/ssh -i /home/backuppc/.ssh/some-key
r...@phantom.databit7.com" \
--rsync-path=/usr/bin/rsync\
--super\
--recursive\
--protect-args\
--numeric-ids\
--perms\
--owner\
--group\
-D\
--times\
--links\
--hard-links\
--delete\
--delete-excluded\
--one-file-system\
--partial\
--log-format="log: %o %i %B %8U,%8G %9l %f%L"\
--stats\
--checksum\
--exclude\
/proc\
--exclude\
*.tmp\
--iconv=utf8,UTF-8\
--timeout=72000\
--include=/home\
--include=/home/administrator\
--exclude=/*\
--exclude=/home/*\
phantom.databit7.com:/home/administrator/\
/
Running this command on the backuppc server produces the following output
sudo -u backuppc sh -c ./rsync.text
bash: phantom.databit7.com: command not found
rsync_bpc: connection unexpectedly closed (0 bytes received so far)
[Receiver]
Done: 0 errors, 0 filesExist, 0 sizeExist, 0 sizeExistComp, 0
filesTotal, 0 sizeTotal, 0 filesNew, 0 sizeNew, 0 sizeNewComp, 5 inode
rsync error: error in rsync protocol data stream (code 12) at io.c(226)
[Receiver=3.1.3.0]
The question in my mind is Why is backuppc constructing an invocation
that includes the hostname as a command?
the host is configured thusly:
$Conf{XferMethod}='rsync';
$Conf{BackupFilesExclude} = undef;
$Conf{BackupFilesOnly} = [ '/home/administrator' ];
$Conf{'RsyncShareName'} = [ "/home/administrator" ] ;
$Conf{BackupsDisable} = 0 ;
# $Conf{rsyncPath} = "/opt/rsyncWrapper"; # this was used to intercept
the calls to rsync, it CALLS rsync with argv and envv intact.
$Conf{rsyncPath} = "/usr/local/bin/rsync_bpc";
$Conf{RsyncClientCmd} = '$sshPath $host nice -n 19 sudo $rsyncPath
$argList+';
$Conf{RsyncClientPath} = '/usr/bin/rsync';
$Conf{RsyncArgsExtra} = [
'--exclude', '/proc',
'--exclude', '*.tmp',
];
A more basic question might be 'what is the expected invocation of rsync' ?
I'd expect the second to last argument to be accepted without complaint,
although a username may be required, (and seems experimentally to be),
but the last argument I'd have expected to have been populated from
TopDir, but it seems relative to --bpc-top-dir, am I right?
All that said, I manually corrected the invocation to:
/usr/local/bin/rsync_bpc \
--bpc-top-dir\
/vol0/www/STUFF.databit7.com/data/\
--bpc-host-name\
phantom.databit7.com\
--bpc-share-name\
/home/administrator\
--bpc-bkup-num\
1\
--bpc-bkup-comp\
3\
--bpc-bkup-prevnum\
-1\
--bpc-bkup-prevcomp\
-1\
--bpc-bkup-inode0\
5\
--bpc-log-level\
1\
--bpc-attrib-new\
-e\
'/usr/bin/ssh -i /home/backuppc/.ssh/some-key' \
--rsync-path="/usr/bin/nice -n 19 /usr/bin/rsync" \
--super\
--recursive\
--protect-args\
--numeric-ids\
--perms\
--owner\
--group\
-D\
--times\
--links\
--hard-links\
--delete\
--delete-excluded\
--one-file-system\
--partial\
--log-format='log: %o %i %B %8U,%8G %9l %f%L'\
--stats\
--checksum\
--exclude\
/proc\
--exclude\
*.tmp\
--iconv=utf8,UTF-8\
--timeout=72000\
--include=/home\
--include=/home/administrator\
r...@phantom.databit7.com:/home/administrator/\
/
So getting close, but no cigar, what configuration do we expect to
produce this ?
Also, nice is, well nice; but `throttle` would be great too. Does anyone
use backuppc with throttle, at this time?
Cheers,
_______________________________________________
BackupPC-users mailing list
BackupPC-users@lists.sourceforge.net
List: https://lists.sourceforge.net/lists/listinfo/backuppc-users
Wiki: https://github.com/backuppc/backuppc/wiki
Project: https://backuppc.github.io/backuppc/