Package: rdiff-backup
Version: 1.2.2-1
Severity: normal

I tried running rdiff-backup under backupninja to do backups on a system with
OpenAFS running, and found that it crashes trying to list files under /afs even
if I exclude /afs from the backup. The way backupninja calls rdiff-backup is to
run it on /, and include/exclude the relevant directories to be backed up,
like:

/usr/bin/rdiff-backup  --print-statistics --exclude '/home/*/.gnupg' --exclude 
'/home/*/.local/share/Trash' --exclude '/home/*/.Trash' --exclude 
'/home/*/.thumbnails' --exclude '/home/*/.beagle' --exclude '/home/*/.sheep' 
--include '/var/spool/cron/crontabs' --include '/var/backups' --include '/etc' 
--include '/root' --include '/home' --include '/usr/local/*bin' --include 
'/var/lib/dpkg/status*' --exclude '/*' / [EMAIL PROTECTED]::/srv/backups/test

I can reproduce the crash error by running the following simpler command:

rdiff-backup --exclude '/afs' / test

It seems that rdiff-backup is trying to list files in /afs even when it's
excluded. If I turn off openafs, the backup proceeds as expected. Any thoughts?

Here is the stacktrace generated:

[EMAIL PROTECTED]:~/tmp> rdiff-backup --print-statistics --exclude '/afs' / test
Found interrupted initial backup. Removing...
ListError afs/.athena.mit.edu/activity/a/a-archives [Errno 13] Permission 
denied: '/afs/.athena.mit.edu/activity/a/a-archives'
ListError afs/.athena.mit.edu/activity/a/a-entry/.sql [Errno 13] Permission 
denied: '/afs/.athena.mit.edu/activity/a/a-entry/.sql'
ListError afs/.athena.mit.edu/activity/a/a-entry/OldFiles/.sql [Errno 13] 
Permission denied: '/afs/.athena.mit.edu/activity/a/a-entry/OldFiles/.sql'
Exception '[Errno 19] No such device: 
'/afs/.athena.mit.edu/activity/a/a-entry/OldFiles/OldFiles'' raised of class 
'<type 'exceptions.OSError'>':
  File "/var/lib/python-support/python2.5/rdiff_backup/robust.py", line 32, in 
check_common_error
    try: return function(*args)
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 1123, in 
append
    return self.__class__(self.conn, self.base, self.index + (ext,))
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 868, in 
__init__
    else: self.setdata()
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 892, in 
setdata
    self.data = self.conn.rpath.make_file_dict(self.path)
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 277, in 
make_file_dict
    return C.make_file_dict(filename)

Exception '[Errno 19] No such device: 
'/afs/.athena.mit.edu/activity/a/a-entry/OldFiles/OldFiles'' raised of class 
'<type 'exceptions.OSError'>':
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 304, in 
error_check_Main
    try: Main(arglist)
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 324, in 
Main
    take_action(rps)
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 280, in 
take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 334, in 
Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin, force)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
828, in backup_set_globals
    src_fsa = rpin.conn.fs_abilities.get_readonly_fsa('source', rpin)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
571, in get_readonly_fsa
    return FSAbilities(desc_string).init_readonly(rp)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
126, in init_readonly
    self.set_resource_fork_readonly(rp)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
493, in set_resource_fork_readonly
    for rp in selection.Select(dir_rp).set_iter():
  File "/var/lib/python-support/python2.5/rdiff_backup/selection.py", line 132, 
in Iterate_fast
    try: rpath, val = diryield_stack[-1].next()
  File "/var/lib/python-support/python2.5/rdiff_backup/selection.py", line 120, 
in diryield
    rpath.append, (filename,))
  File "/var/lib/python-support/python2.5/rdiff_backup/robust.py", line 32, in 
check_common_error
    try: return function(*args)
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 1123, in 
append
    return self.__class__(self.conn, self.base, self.index + (ext,))
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 868, in 
__init__
    else: self.setdata()
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 892, in 
setdata
    self.data = self.conn.rpath.make_file_dict(self.path)
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 277, in 
make_file_dict
    return C.make_file_dict(filename)

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 30, in <module>
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 304, in 
error_check_Main
    try: Main(arglist)
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 324, in 
Main
    take_action(rps)
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 280, in 
take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/var/lib/python-support/python2.5/rdiff_backup/Main.py", line 334, in 
Backup
    rpout.conn.fs_abilities.backup_set_globals(rpin, force)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
828, in backup_set_globals
    src_fsa = rpin.conn.fs_abilities.get_readonly_fsa('source', rpin)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
571, in get_readonly_fsa
    return FSAbilities(desc_string).init_readonly(rp)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
126, in init_readonly
    self.set_resource_fork_readonly(rp)
  File "/var/lib/python-support/python2.5/rdiff_backup/fs_abilities.py", line 
493, in set_resource_fork_readonly
    for rp in selection.Select(dir_rp).set_iter():
  File "/var/lib/python-support/python2.5/rdiff_backup/selection.py", line 132, 
in Iterate_fast
    try: rpath, val = diryield_stack[-1].next()
  File "/var/lib/python-support/python2.5/rdiff_backup/selection.py", line 120, 
in diryield
    rpath.append, (filename,))
  File "/var/lib/python-support/python2.5/rdiff_backup/robust.py", line 32, in 
check_common_error
    try: return function(*args)
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 1123, in 
append
    return self.__class__(self.conn, self.base, self.index + (ext,))
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 868, in 
__init__
    else: self.setdata()
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 892, in 
setdata
    self.data = self.conn.rpath.make_file_dict(self.path)
  File "/var/lib/python-support/python2.5/rdiff_backup/rpath.py", line 277, in 
make_file_dict
    return C.make_file_dict(filename)
OSError: [Errno 19] No such device: 
'/afs/.athena.mit.edu/activity/a/a-entry/OldFiles/OldFiles'

-- System Information:
Debian Release: lenny/sid
  APT prefers testing
  APT policy: (700, 'testing'), (650, 'unstable'), (600, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-1-686 (SMP w/1 CPU core)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=C (charmap=UTF-8) (ignored: LC_ALL set to 
fr_FR.UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages rdiff-backup depends on:
ii  libc6                         2.7-16     GNU C Library: Shared libraries
ii  librsync1                     0.9.7-5    rsync remote-delta algorithm libra
ii  python                        2.5.2-3    An interactive high-level object-o
ii  python-support                0.8.4      automated rebuilding support for P

Versions of packages rdiff-backup recommends:
ii  python-pylibacl               0.4.0-2    module for manipulating POSIX.1e A
ii  python-pyxattr                0.4.0-1    module for manipulating filesystem

rdiff-backup suggests no packages.

-- no debconf information



-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to