bugrdiff-backup - Bugs: bug #19802, fails backing up to cifs share

 
 

bug #19802: fails backing up to cifs share

Submitter:  None
Submitted:  Sat 05 May 2007 03:58:49 AM UTC
   
 
Category:  None Severity:  3 - Normal
Item Group:  None Status:  Fixed
Privacy:  Public Assigned to:  None
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Mon 18 Jun 2007 03:09:17 AM UTC, comment #5: 

The symlink error that is reported in the most recent comment was corrected in version 1.1.11.

I am closing this bug. Everything mentioned in it appears to be resolved.

Andrew Ferguson <owsla>
Group administrator
Fri 18 May 2007 10:47:58 PM UTC, comment #4: 

No worries - I just do as I'm told:)

Seems to have worked (to my novice eye) - except now there's an exception further down the process re symlinks?  Perhaps (if you can confirm) this is no longer the right place for this discussion?  I tried with the --exclude-symbolic-links switch, but it made no difference (and I'd like them anyway).

Here's the output:

[root@morgansmachine ~]# echo 0 > /proc/fs/cifs/LookupCacheEnabled
[root@morgansmachine ~]# rdiff-backup -v9 --include-globbing-filelist include-list / /mnt/cifs/rdiff-backup
Sat May 19 10:16:41 2007  Making directory /mnt/cifs/rdiff-backup
Sat May 19 10:16:41 2007  Making directory /mnt/cifs/rdiff-backup/rdiff-backup-data
Sat May 19 10:16:42 2007  Unable to import module xattr.
Extended attributes not supported on filesystem at /
Sat May 19 10:16:42 2007  Unable to import module posix1e from pylibacl package.ACLs not supported on filesystem at /
Sat May 19 10:16:42 2007  escape_dos_devices not required by filesystem at /
Sat May 19 10:16:42 2007  -----------------------------------------------------------------
Detected abilities for source (read only) file system:
  Access control lists                         Off
  Extended attributes                          Off
  Case sensitivity                             On
  Escape DOS devices                           Off
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
-----------------------------------------------------------------
Sat May 19 10:16:42 2007  Making directory /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0
Sat May 19 10:16:42 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/5-_ a.snapshot.gz
Sat May 19 10:16:42 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/5-_ a.snapshot.gz
Sat May 19 10:16:42 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/A
Sat May 19 10:16:42 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/a
Sat May 19 10:16:42 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/foo
Sat May 19 10:16:42 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/foo
Sat May 19 10:16:42 2007  Making directory /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/hl
Sat May 19 10:16:42 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/hardlinked_file1
Sat May 19 10:16:43 2007  Hard linking /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/hl/hardlinked_file2 to /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/hardlinked_file1
Sat May 19 10:16:43 2007  Warning: hard linking not supported by filesystem at /mnt/cifs/rdiff-backup/rdiff-backup-data
Sat May 19 10:16:43 2007  Directories on file system at /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0 are not fsyncable.
Assuming it's unnecessary.
Sat May 19 10:16:43 2007  Unable to import module xattr.
Extended attributes not supported on filesystem at /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0
Sat May 19 10:16:43 2007  Unable to import module posix1e from pylibacl package.ACLs not supported on filesystem at /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0
Sat May 19 10:16:43 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/dir_inc_check
Sat May 19 10:16:43 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/dir_inc_check
Sat May 19 10:16:43 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/regfile
Sat May 19 10:16:43 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/regfile
Sat May 19 10:16:43 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/high_perms
Sat May 19 10:16:44 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/high_perms
Sat May 19 10:16:44 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.0/symlinked_file1
Sat May 19 10:16:44 2007  Exception '[Errno 95] Operation not supported' raised of class 'exceptions.OSError':
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 298, in error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 318, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 274, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 668, in backup_set_globals
    dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 154, in init_readwrite
    self.set_symlink_perms(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 411, in set_symlink_perms
    sym_dest.symlink(sym_source.path)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 888, in symlink
    self.conn.os.symlink(linktext, self.path)

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 298, in error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 318, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 274, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 668, in backup_set_globals
    dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 154, in init_readwrite
    self.set_symlink_perms(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 411, in set_symlink_perms
    sym_dest.symlink(sym_source.path)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 888, in symlink
    self.conn.os.symlink(linktext, self.path)
OSError: [Errno 95] Operation not supported
[root@morgansmachine ~]#

m read <mstuff>
Fri 18 May 2007 02:13:20 PM UTC, comment #3: 

Oops, I am an idiot.  That should have been:

echo 0 > /proc/fs/cifs/LookupCacheEnabled

It is enabled by default, and needs to be disabled.  Otherwise, the debug trace shows, after an unlink, stale data being returned to multiple calls to stat in rapid succession.  Sorry for the confusion!

Jonathan Hankins <jonathanhankins>
Fri 18 May 2007 05:28:02 AM UTC, comment #2: 

echo 1 > /proc/fs/cifs/LookupCacheEnabled
didn't seem to work (2.6.20-1.2316.fc5) for me.

Also, noticed that the Debian bug refered to at bug 16852 is closed fixed...  As of v1.1.7-1, but I'm running 1.1.9?

Output looks pretty much the same as before (to me):

[root@morgansmachine ~]# echo 1 > /proc/fs/cifs/LookupCacheEnabled
[root@morgansmachine ~]# rdiff-backup -v9 --include-globbing-filelist include-list / /mnt/cifs/rdiff-backup
Fri May 18 17:08:59 2007  Unable to import module xattr.
Extended attributes not supported on filesystem at /
Fri May 18 17:08:59 2007  Unable to import module posix1e from pylibacl package.ACLs not supported on filesystem at /
Fri May 18 17:08:59 2007  escape_dos_devices not required by filesystem at /
Fri May 18 17:08:59 2007  -----------------------------------------------------------------
Detected abilities for source (read only) file system:
  Access control lists                         Off
  Extended attributes                          Off
  Case sensitivity                             On
  Escape DOS devices                           Off
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
-----------------------------------------------------------------
Fri May 18 17:08:59 2007  Making directory /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.1
Fri May 18 17:08:59 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.1/5-_ a.snapshot.gz
Fri May 18 17:08:59 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.1/5-_ a.snapshot.gz
Fri May 18 17:08:59 2007  Touching /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.1/A
Fri May 18 17:08:59 2007  Deleting /mnt/cifs/rdiff-backup/rdiff-backup-data/rdiff-backup.tmp.1/a
Fri May 18 17:08:59 2007  Exception '' raised of class 'exceptions.AssertionError':
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 298, in error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 318, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 274, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 668, in backup_set_globals
    dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 144, in init_readwrite
    self.set_case_sensitive_readwrite(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 251, in set_case_sensitive_readwrite
    assert not upper_a.lstat()

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 298, in error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 318, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 274, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 668, in backup_set_globals
    dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 144, in init_readwrite
    self.set_case_sensitive_readwrite(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 251, in set_case_sensitive_readwrite
    assert not upper_a.lstat()
AssertionError
[root@morgansmachine ~]#

m read <mstuff>
Fri 18 May 2007 02:19:18 AM UTC, comment #1: 

This is the same as 16852.  I have found that this resolves it:

(On Linux 2.6.20)

echo 1 > /proc/fs/cifs/LookupCacheEnabled

Alternately, you can put a time.sleep(1) before line 250 in fs_abilities.py (in version 1.1.10).

Unfortunately, once I got past this point, I get a stack trace from  set_symlink_perms.  I am looking at this now and will file a bug report if I figure it out :-)

High-five to the cifs kernel people for adding in the debugging support that let me track down the Lookup Cache issue.


Jonathan Hankins <jonathanhankins>
Sat 05 May 2007 03:58:49 AM UTC, original submission:  

Both stable and development fail backing up to cifs share, as below (but, local back up runs OK, see bottom:

Development v1.1.9
[root@morgansmachine ~]# rdiff-backup / /mnt/cifs/rdiff-backup Exception '' raised of class 'exceptions.AssertionError':
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 298, in error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 318, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 274, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 668, in backup_set_globals
    dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 144, in init_readwrite
    self.set_case_sensitive_readwrite(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 251, in set_case_sensitive_readwrite
    assert not upper_a.lstat()

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 298, in error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 318, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 274, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 668, in backup_set_globals
    dest_fsa = FSAbilities('destination').init_readwrite(Globals.rbdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 144, in init_readwrite
    self.set_case_sensitive_readwrite(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 251, in set_case_sensitive_readwrite
    assert not upper_a.lstat()
AssertionError
[root@morgansmachine ~]#

Stable v1.0.5
[root@morgansmachine ~]# rdiff-backup / /mnt/cifs/rdiff-backup Warning: hard linking not supported by filesystem at /mnt/cifs/rdiff-backup/rdiff-backup-data
Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.Main(sys.argv[1:])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 285, in Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 255, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 296, in Backup
    backup_set_fs_globals(rpin, rpout)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 418, in backup_set_fs_globals
    dest_fsa = rpout.conn.fs_abilities.get_fsabilities_readwrite(
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 415, in get_fsabilities_readwrite
    return FSAbilities(desc_string).init_readwrite(
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 162, in init_readwrite
    if override_chars_to_quote is None: self.set_chars_to_quote(subdir)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 274, in set_chars_to_quote
    if is_case_sensitive():
  File "/usr/lib/python2.4/site-packages/rdiff_backup/fs_abilities.py", line 245, in is_case_sensitive
    assert not upper_a.lstat()
AssertionError
[root@morgansmachine ~]#

[root@morgansmachine ~]# rdiff-backup --include-globbing-filelist include-list-test / /home/tmp/testbackup
[root@morgansmachine ~]#

Anonymous

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by owsla (Posted a comment)
  • -email is unavailable- added by mstuff (Posted a comment)
  • -email is unavailable- added by jonathanhankins (Posted a comment)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 5 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2007-06-18 owsla StatusNone Fixed
        Open/ClosedOpen Closed
    2007-05-05 mstuff Carbon-Copy- Added -email is unavailable-
    2007-05-05 mstuff Carbon-CopyRemoved mstuff -
    2007-05-05 mstuff Carbon-Copy- Added mstuff

    Back to the top

    Powered by Savane 3.13-02a9.
    Corresponding source code