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

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

Re: [rdiff-backup-users] More patches to get rdiff-backup working under


From: rdiff
Subject: Re: [rdiff-backup-users] More patches to get rdiff-backup working under cygwin/windows
Date: Sat, 27 Jan 2007 11:29:02 -0800 (PST)

On Fri, 26 Jan 2007, Marc Dyksterhouse wrote:

Hi all,

I had some issues backing up a linux machine to a Windows box using rdiff-backup. I got passed all my (known) issues today so I wanted to submit the fixes so others could take advantage of them. I started with version 1.1.7.


Excellent! It is great to see bugfixes like this sent in...
Does anyone know when 1.1.x will be considered stable?

-Eric


Note that these fixes are only needed when backing up unix to windows. Windows to windows or windows to unix shouldn't need this. Well, actually, the Security.py patch is probably needed in all these cases.

My issues:

o The now famous fsync issue:
I just included the same patch here that is already being used.

o Files with asterisks (*) and other bad characters:

I had a file named "*.xxx" that was causing the backup to fail.

Turns out there's a pretty bad bug in the get_ctq_from_fsas logic where the regex used wants to quote all characters except a-z, underscore, space, period, and dash. But the faulty regex also includes all ASCII chars BETWEEN a space and a period. Bad regex: "^a-z0-9_ .-" Good regex: "^a-z0-9_ .-". Putting the dash at the end makes it not be a range special character. This appears twice in fs_abilities.py. The second one includes "A-Z" (uppercase chars) too.

o DOS device files ("aux", "prn", etc) caused backup to fail.

Any file on linux that was named aux or aux.XXX or prn[.XXX] or con[.XXX] or nul[.XXX] or com[0-9][.XXX] or lpt[12][.XXX] would cause the backup to fail.

I created a patch that tests the file system abilities and escapes these names if necessary by quoting the first character of the name. So, "aux" is converted to ";097ux".

This was the biggest change. I've only tested it when backing up unix on to windows. Restore works too.

o Security.py exception

FilenameMapping.set_init_quote_vals was missing from the list of methods that can be called remotely.


The four patches can be downloaded here:

 http://www.visiwave.com/download/rdiff_backup/rpath.py.patch
 http://www.visiwave.com/download/rdiff_backup/Security.py.patch
 http://www.visiwave.com/download/rdiff_backup/FilenameMapping.py.patch
 http://www.visiwave.com/download/rdiff_backup/fs_abilities.py.patch

Regards,
marc



_______________________________________________
rdiff-backup-users mailing list at address@hidden
http://lists.nongnu.org/mailman/listinfo/rdiff-backup-users
Wiki URL: http://rdiff-backup.solutionsfirst.com.au/index.php/RdiffBackupWiki





reply via email to

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