Roger Price
2009-Jul-26 20:39 UTC
DeltaCopy puts unwanted TAB character into rsync command
Imran Hussain writes Tue Dec 6 19:54:06 GMT 2005> I have written an rsync wrapper for Windows called DeltaCopy. > (http://www.aboutmyip.com/AboutMyXApp/DeltaCopy.jsp). It is > written in Borland C++ Builder and source is also available on the > net. Let me know if someone has any suggestions/comments.Hello Imran, I have a Windows PC running Vista Family Premium Edition SP2. I installed DeltaCopy and set it up to make a test backup to an openSUSE Linux 11.0 server running rsync 3.0.2. The test fails because the rsync command created by DeltaCopy is badly formed: it has an unwanted TAB after the module name. Executing: rsync.exe -v -rlt -z --delete "/cygdrive/M/Documents de Michel/Documents/Test backup/" "michel at clubmicrolag.net::Michel-MD1695 /Test backup/" @ERROR: Unknown module 'Michel-MD1695 ' rsync error: error starting client-server protocol (code 5) at /home/lapo/packaging/rsync-3.0.4-1/src/rsync-3.0.4/main.c(1504) [sender=3.0.4] The TAB appears to come from the server as part of the server reply to the query for the list of modules. Each module name is followed by a TAB even though there are no comment lines in rsyncd.conf on the server. I have run DeltaCopy on Windows XP against the same server without problems, so DeltaCopy is capable of trimming the TAB at least on some occasions. How can I get rid of this TAB? Any suggestions would be much appreciated. Roger
Roger Price
2009-Aug-11 08:00 UTC
DeltaCopy puts unwanted TAB character into rsync command
I have found a workaround for this problem - use short module names, <15 bytes. I placed the following sequence of module declarations in /etc/rsyncd.conf [123456789abcdef0] path = /dev/null [123456789abcdef] path = /dev/null [123456789abcde] path = /dev/null [123456789abcd] path = /dev/null [123456789abc] path = /dev/null [123456789ab] path = /dev/null The command rsync rsyncd://mysite.net returned the following module listing, shown here in emacs hexl-mode : 00000120: 3132 3334 3536 3738 3941 4243 4445 4630 123456789ABCDEF0 00000130: 090a 3132 3334 3536 3738 3941 4243 4445 ..123456789ABCDE 00000140: 4609 0a31 3233 3435 3637 3839 4142 4344 F..123456789ABCD 00000150: 4520 090a 3132 3334 3536 3738 3941 4243 E ..123456789ABC 00000160: 4420 2009 0a31 3233 3435 3637 3839 4142 D ..123456789AB 00000170: 4320 2020 090a 3132 3334 3536 3738 3941 C ..123456789A 00000180: 4220 2020 2009 0a B .. In the first two cases, the module name has 15 or more bytes and is followed directly by a TAB (09). In the other four cases, the module name is 14 or fewer bytes, and is padded out with spaces (20). Only when the module name is followed by a space is DeltaCopy able to extract the module name correctly. When the user selects "..." to see a list of available modules (virtual directory), the TABs are visible as thick vertical lines. See http://rogerprice.org/DeltaCopy+TAB.png Roger On Sun, 26 Jul 2009, Roger Price wrote:> The test fails because the rsync command created by DeltaCopy is badly > formed: it has an unwanted TAB after the module name. > > Executing: rsync.exe -v -rlt -z --delete > "/cygdrive/M/Documents de Michel/Documents/Test backup/" > "mchel at clubmicrolag.net::Michel-MD1695 /Test backup/" > > @ERROR: Unknown module 'Michel-MD1695 ' > rsync error: error starting client-server protocol (code 5) at > /home/lapo/packaging/rsync-3.0.4-1/src/rsync-3.0.4/main.c(1504) > [sender=3.0.4] > > The TAB appears to come from the server as part of the server reply to the > query for the list of modules. Each module name is followed by a TAB even > though there are no comment lines in rsyncd.conf on the server.