rdiff-backup-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [rdiff-backup-users] Status of native Windows port?


From: Patrick Nagel
Subject: Re: [rdiff-backup-users] Status of native Windows port?
Date: Wed, 06 Aug 2008 05:22:38 +0000
User-agent: Thunderbird 2.0.0.16 (X11/20080805)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

I finally found some time and tried the following:

* Run an SSH daemon on Windows (I used freeSSHd, http://www.freesshd.com/)
* Backup from a Linux host to the Windows host (launching rdiff-backup on the
Linux box)

After configuring the SSH daemon for public key authentication, and verifying
that the connection worked as expected, I ran rdiff-backup and got the
following output:

$ rdiff-backup -v9 temp address@hidden::C:\\temp\\test
Wed Aug  6 12:57:33 2008  Using rdiff-backup version 1.2.0
Wed Aug  6 12:57:33 2008  Executing ssh -C address@hidden rdiff-backup
- --server
Wed Aug  6 12:57:33 2008  Client sending (0): ConnectionRequest: Globals.get
with 1 arguments
Wed Aug  6 12:57:33 2008  Client sending (0): 'version'
Wed Aug  6 12:57:34 2008  Client received (0): '1.2.0'
Wed Aug  6 12:57:34 2008  Registering connection 1
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
SetConnections.init_connection_remote with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 1
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
log.Log.setverbosity with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 9
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
log.Log.setterm_verbosity with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 9
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
rpath.make_file_dict with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'C:\\temp\\test'
Wed Aug  6 12:57:34 2008  Client received (0): {'type': None}
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
rpath.make_file_dict with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'C:\\temp\\test'
Wed Aug  6 12:57:34 2008  Client received (0): {'type': None}
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
Time.setcurtime_local with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 1217998654
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest: Globals.set
with 2 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'client_conn'
Wed Aug  6 12:57:34 2008  Client sending (0): LocalConnection
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
Globals.postset_regexp_local with 3 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'no_compression_regexp'
Wed Aug  6 12:57:34 2008  Client sending (0):
'(?i).*\\.(gz|z|bz|bz2|tgz|zip|rpm|deb|jpg|jpeg|gif|png|jp2|mp3|ogg|avi|wmv|mpeg|mpg|rm|mov|flac|shn|pgp|gpg|rz|lzh|zoo|lharc|rar|arj|asc)$'
Wed Aug  6 12:57:34 2008  Client sending (0): None
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
robust.install_signal_handlers with 0 arguments
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
Hardlink.initialize_dictionaries with 0 arguments
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest: Globals.set
with 2 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'isbackup_writer'
Wed Aug  6 12:57:34 2008  Client sending (0): 1
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest: Globals.set
with 2 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'backup_reader'
Wed Aug  6 12:57:34 2008  Client sending (0): LocalConnection
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest: Globals.set
with 2 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'backup_writer'
Wed Aug  6 12:57:34 2008  Client sending (0): PipeConnection 1
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Making directory C:\temp\test
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest: os.mkdir with
1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'C:\\temp\\test'
Wed Aug  6 12:57:34 2008  Client received (0): None
Wed Aug  6 12:57:34 2008  Client sending (0): ConnectionRequest:
rpath.make_file_dict with 1 arguments
Wed Aug  6 12:57:34 2008  Client sending (0): 'C:\\temp\\test'
Wed Aug  6 12:57:34 2008  Exception 'invalid load key, '
'.' raised of class '<class 'cPickle.UnpicklingError'>':
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 302, in
error_check_Main
~    try: Main(arglist)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 322, in 
Main
~    take_action(rps)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 278, in
take_action
~    elif action == "backup": Backup(rps[0], rps[1])
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 330, in
Backup
~    backup_check_dirs(rpin, rpout)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 371, in
backup_check_dirs
~    else: rpout.mkdir()
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/rpath.py", line 960, in
mkdir
~    self.setdata()
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/rpath.py", line 884, in
setdata
~    self.data = self.conn.rpath.make_file_dict(self.path)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
448, in __call__
~    return apply(self.connection.reval, (self.name,) + args)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
368, in reval
~    result = self.get_response(req_num)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
315, in get_response
~    try: req_num, object = self._get()
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
241, in _get
~    if format_string == "o": result = cPickle.loads(data)

Traceback (most recent call last):
~  File "/usr/bin/rdiff-backup", line 23, in <module>
~    rdiff_backup.Main.error_check_Main(sys.argv[1:])
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 302, in
error_check_Main
~    try: Main(arglist)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 322, in 
Main
~    take_action(rps)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 278, in
take_action
~    elif action == "backup": Backup(rps[0], rps[1])
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 330, in
Backup
~    backup_check_dirs(rpin, rpout)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/Main.py", line 371, in
backup_check_dirs
~    else: rpout.mkdir()
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/rpath.py", line 960, in
mkdir
~    self.setdata()
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/rpath.py", line 884, in
setdata
~    self.data = self.conn.rpath.make_file_dict(self.path)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
448, in __call__
~    return apply(self.connection.reval, (self.name,) + args)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
368, in reval
~    result = self.get_response(req_num)
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
315, in get_response
~    try: req_num, object = self._get()
~  File "/usr/lib/python2.5/site-packages/rdiff_backup/connection.py", line
241, in _get
~    if format_string == "o": result = cPickle.loads(data)
cPickle.UnpicklingError: invalid load key, '
'.

Notice that the 'C:\temp\test' directory on the Windows host got created, but
nothing else happened. The SSH connection stayed up until I stopped the SSH
daemon on Windows, after what I got 'Read from remote host 192.168.0.171:
Connection reset by peer' in my Linux shell.

My guess is, that the freeSSHd screws something up here, but I'm not sure.

When the option 'Use new console engine' (in the SSH tab of freeSSHd's
settings dialog) is checked, I don't even get this far:

$ rdiff-backup -v9 temp address@hidden::C:\\temp\\test
Wed Aug  6 13:08:34 2008  Using rdiff-backup version 1.2.0
Wed Aug  6 13:08:34 2008  Executing ssh -C address@hidden rdiff-backup
- --server
Wed Aug  6 13:08:34 2008  Client sending (0): ConnectionRequest: Globals.get
with 1 arguments
Wed Aug  6 13:08:34 2008  Client sending (0): 'version'

... and there rdiff-backup hangs.

Can anyone deduce from rdiff-backup's output what might be wrong with the
connection? I'll try with another SSH daemon next.

I saw ahd71's mail where he describes how to use Plink.exe to backup remotely.
But in this case rdiff-backup must be initiated from the Windows machine. I'd
prefer to initiate rdiff-backup from a Linux machine and store the backups on
the Windows machine though (which requires an SSH daemon on the Windows 
machine).

Patrick.

- --
Key ID: 0x86E346D4            http://patrick-nagel.net/key.asc
Fingerprint: 7745 E1BE FA8B FBAD 76AB 2BFC C981 E686 86E3 46D4
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkiZNRwACgkQyYHmhobjRtQvYQCfSf+0MtT7HB0eqhleyXgtRhNv
sSIAn0gTe7EUJi7gI70epT6sBiO3W22n
=rvM5
-----END PGP SIGNATURE-----




reply via email to

[Prev in Thread] Current Thread [Next in Thread]