SearchFAQMemberlist Log in
Reply to topic Page 1 of 1
rdiff-backup + smbfs = :(
Author Message
Post rdiff-backup + smbfs = :( 
Hi,

I'm new to the list, and I promise I've search everywhere, high and
low. and I cannot find anyone having this problem, and I cannot figure out
how to fix it! =(

I've been given room on a windows share to stage my linux backups
[approx 200gb] near-line before they go to tape. I've mounted the share
using smbfs version 3.0.7

I can barely read python, so I've been unable to dig deeper than
this.. rdiff-backup is waaaay to convenient for the task of backing up unix
over smbfs to ntfs, I really have a difficult time believing nobody else is
doing this, what braindead thing am I doing wrong/missing?

In short, NFS [which isn't an option in my environment] works
peachy, but with SMBFS; python2.3 processes hang onto the rdiff-backup.tmp.0
directory, and b0rk city!

The rdiff-backup process fails with the following error:

--- START OF LISTING
root:neptune:/mnt/backups>rdiff-backup -v9 /home/mprov mprov
Tue Oct 12 17:43:44 2004 Making directory mprov
Tue Oct 12 17:43:44 2004 Making directory mprov/rdiff-backup-data
Tue Oct 12 17:43:44 2004 Extended attributes not supported by filesystem at
/ho
me/mprov
Tue Oct 12 17:43:44 2004 ACLs appear not to be supported by filesystem at
/home
/mprov
Tue Oct 12 17:43:44 2004
------------------------------------------------------
-----------
Detected abilities for source (read only) file system:
Access control lists Off
Extended attributes Off
Mac OS X style resource forks Off
Mac OS X Finder information Off
-----------------------------------------------------------------
Tue Oct 12 17:43:44 2004 Making directory
mprov/rdiff-backup-data/rdiff-backup.
tmp.0
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/fo
o
Tue Oct 12 17:43:44 2004 Warning: ownership cannot be changed on filesystem
at
mprov/rdiff-backup-data
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0/fo
o
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/ha
rdlinked_file1
Tue Oct 12 17:43:44 2004 Hard linking
mprov/rdiff-backup-data/rdiff-backup.tmp.
0/hardlinked_file2 to
mprov/rdiff-backup-data/rdiff-backup.tmp.0/hardlinked_file
1
Tue Oct 12 17:43:44 2004 Warning: hard linking not supported by filesystem
at m
prov/rdiff-backup-data
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0/hardlinked_file1
Tue Oct 12 17:43:44 2004 Directories on file system at
mprov/rdiff-backup-data/rdiff-backup.tmp.0 are not fsyncable.
Assuming it's unnecessary.
Tue Oct 12 17:43:44 2004 Extended attributes not supported by filesystem at
mprov/rdiff-backup-data/rdiff-backup.tmp.0
Tue Oct 12 17:43:44 2004 ACLs appear not to be supported by filesystem at
mprov/rdiff-backup-data/rdiff-backup.tmp.0
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/dir_inc_check
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0/dir_inc_check
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/regfile
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0/regfile
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/5-_ a.
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0/5-_ a.
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/A
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0/a
Tue Oct 12 17:43:44 2004 Touching
mprov/rdiff-backup-data/rdiff-backup.tmp.0/:
Tue Oct 12 17:43:44 2004 Deleting
mprov/rdiff-backup-data/rdiff-backup.tmp.0
Tue Oct 12 17:43:44 2004 Removing directory
mprov/rdiff-backup-data/rdiff-backup.tmp.0
Traceback (most recent call last):
File "/usr/bin/rdiff-backup", line 23, in ?
rdiff_backup.Main.Main(sys.argv[1:])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 259, in
Main
take_action(rps)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 229, in
take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 270, in
Backup
backup_set_fs_globals(rpin, rpout)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 388, in
backup_set_fs_globals
dest_fsa = rpout.conn.fs_abilities.get_fsabilities_readwrite(
File "/usr/lib/python2.3/site-packages/rdiff_backup/fs_abilities.py", line
405, in get_fsabilities_readwrite
return FSAbilities(desc_string).init_readwrite(
File "/usr/lib/python2.3/site-packages/rdiff_backup/fs_abilities.py", line
155, in init_readwrite
subdir.delete()
File "/usr/lib/python2.3/site-packages/rdiff_backup/rpath.py", line 851,
in delete
except os.error: self.conn.shutil.rmtree(self.path)
File "/usr/lib/python2.3/shutil.py", line 142, in rmtree
raise exc[0], (exc[1][0], exc[1][1] + ' removing '+arg)
OSError: [Errno 16] Device or resource busy removing
mprov/rdiff-backup-data/rdiff-backup.tmp.0
(1035)
root:neptune:/mnt/backups>
--- END OF LISTING

I ran rdiff-backup thru idle [the python stepper of love] and figured out
that the "device or resource busy" message was indeed coming from the
operating system level.

To make a long story short, it's trying to erase:

rdiff-backup.tmp.0/

except, -before- i exit the stepper, and -after- rdiff-backup has dumped the
traceback, lsof is reporting:

--- START OF LISTING
(1046)
root:neptune:/mnt/backups>lsof | grep rdiff-backup.tmp
python2.3 4588 root 4r DIR 0,10 4096 854554
/mnt/backups/mprov/rdiff-backup-data/rdiff-backup.tmp.0
python2.3 4589 root 4r DIR 0,10 4096 854554
/mnt/backups/mprov/rdiff-backup-data/rdiff-backup.tmp.0
python2.3 4590 root 4r DIR 0,10 4096 854554
/mnt/backups/mprov/rdiff-backup-data/rdiff-backup.tmp.0
python2.3 4591 root 4r DIR 0,10 4096 854554
/mnt/backups/mprov/rdiff-backup-data/rdiff-backup.tmp.0
(1047)
root:neptune:/mnt/backups>
--- END OF LISTING

my GUESS is this is why it's b0rking on trying to erase that directory. What
I don't get is; why, when I do the same thing on an NFS mount, do the
python2.3 processes not hang onto the directory and when I use SMBFS it
fails this way?

thanks in advance.
-m

Post rdiff-backup + smbfs = :( 
On Tue, Oct 12, 2004 at 06:11:00PM -0700, Marc Provitt wrote:
my GUESS is this is why it's b0rking on trying to erase that directory. What
I don't get is; why, when I do the same thing on an NFS mount, do the
python2.3 processes not hang onto the directory and when I use SMBFS it
fails this way?

Guess: on NFS it's holding onto the directory as well, it's just that
UNIX filesystem semantics allow you to delete an open object (and the
kernel does some clever reference counting things to make this work),
while Win32 filesystem semantics do not. So what it's doing is legal
on a UNIX filesystem like NFS, but not on a Win32 filesystem like
SMBFS.

-- Nathaniel

--
/* Tell the world that we're going to be the grim
* reaper of innocent orphaned children.
*/
-- Linux kernel 2.4.5, main.c

Post rdiff-backup + smbfs = :( 
Marc Provitt wrote:

I can barely read python, so I've been unable to dig deeper than
this.. rdiff-backup is waaaay to convenient for the task of backing up unix
over smbfs to ntfs, I really have a difficult time believing nobody else is
doing this, what braindead thing am I doing wrong/missing?




I hazve tried it and gave up as it didn't work for me. I didn't try CIFS
tho - you can give that a go?

dave

Post rdiff-backup + smbfs = :( 
-----Original Message-----
From: Nathaniel Smith [mailto:njs < at > pobox.com]
Sent: Tuesday, October 12, 2004 7:00 PM
To: 'rdiff-backup-users < at > nongnu.org'
Subject: Re: [rdiff-backup-users] rdiff-backup + smbfs = :'(


On Tue, Oct 12, 2004 at 06:11:00PM -0700, Marc Provitt wrote:
my GUESS is this is why it's b0rking on trying to erase
that directory. What
I don't get is; why, when I do the same thing on an NFS
mount, do the
python2.3 processes not hang onto the directory and when I
use SMBFS it
fails this way?

Guess: on NFS it's holding onto the directory as well, it's just that
UNIX filesystem semantics allow you to delete an open object (and the
kernel does some clever reference counting things to make this work),
while Win32 filesystem semantics do not. So what it's doing is legal
on a UNIX filesystem like NFS, but not on a Win32 filesystem like
SMBFS.

-- Nathaniel


actually no, the NFS share lets go of the link, lsof comes back with no
processes holding onto the directory.

Post rdiff-backup + smbfs = :( 
Marc Provitt wrote:

Hi,

File "/usr/lib/python2.3/site-packages/rdiff_backup/rpath.py", line 851,
in delete
except os.error: self.conn.shutil.rmtree(self.path)
File "/usr/lib/python2.3/shutil.py", line 142, in rmtree
raise exc[0], (exc[1][0], exc[1][1] + ' removing '+arg)
OSError: [Errno 16] Device or resource busy removing
mprov/rdiff-backup-data/rdiff-backup.tmp.0
(1035)

my GUESS is this is why it's b0rking on trying to erase that directory.
What I don't get is; why, when I do the same thing on an NFS mount, do the
python2.3 processes not hang onto the directory and when I use SMBFS it
fails this way?

Hi,

I don't know but I have *exactly* the same problem using SHFS (SSH file
system) backing up to a remote location. Perhaps this needs to be worked
around somehow in rdiff-backup ...

I guess UNIX file systems (NFS included) allow you to delete an object that
is still opened, while SMBFS/SHFS/... don't.


--
Jens Benecke
http://www.hitchhikers.de - Europas kostenlose Mitfahrzentrale seit 1998
http://www.rb-hosting.de - Webhosting mit Extras - PHP ab ¤9 - SSH ab ¤19
http://www.spamfreemail.de - 100% saubere Postfächer, garantiert!

Display posts from previous:
Reply to topic Page 1 of 1
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
  


Magic SEO URL for phpBB