SearchFAQMemberlist Log in
Reply to topic Page 1 of 1
"Exception [Errno 112] Host is down:" along with -
Author Message
Post "Exception [Errno 112] Host is down:" along with - 
Dear rdiff-backup community,

today rdiff-backup throw an exception

Exception '[Errno 112] Host is down: '/mnt/XXX/XXXXXXXXXXX'' raised of class '<type 'exceptions.OSError'>':

because the host which provided a samba share was not reachable.
This astonishes me because I run rdiff-backup with option
--exclude-other-filesystems and /mnt/XXX/XXXXXXXXXXX is a mount
point for another file system (which normally is not mounted
while backing up. Therefore this exception never occurred
before).

Why then is it exceptional that the samba share is not accessible
any more? Shouldn't it not be touched since it is on another
file system??


Any ideas how to avoid this?

Thanks for your input, Gregor


This is rdiff-backup 1.2.8 on a recent debian testing distribution.

This is how I call rdiff-backup:

DEFAULTOPTIONS=' --terminal-verbosity=4 --verbosity=5 --print-statistics --exclude-other-filesystems --no-compression-regexp "(?i).*\.(gz|z|bz|bz2|xz|lzma|tgz|tbz2|7z|cpgz|zip|lzh|zoo|lharc|rar|rz|arj|rpm|deb|pgp|gpg|jpeg|jpg|gif|png|jp2|mp3|flac|ogg|avi|wmv|wmf|mpeg|mpg|rm|mov)$"'

$rdiffbackup ${DEFAULTOPTIONS} --backup-mode --exclude /home --exclude /etc --exclude /root --exclude /usr/local / "${RDIFFBACKUPDESTINATION}/system-cache"

This is from the log file /mnt/backup/rdiff-backup/XXXXXXXX/system-cache/rdiff-backup-data/backup.log:


Starting increment operation / to /mnt/backup/rdiff-backup/XXXXXXXX/system-cache
Processing changed file .
Incrementing mirror file /mnt/backup/rdiff-backup/XXXXXXXX/system-cache
Exception '[Errno 112] Host is down: '/mnt/XXX/XXXXXXXXXXX'' raised of class '<type 'exceptions.OSError'>':
File "/usr/lib/python2.7/dist-packages/rdiff_backup/robust.py", line 32, in check_common_error
try: return function(*args)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 1149, in append
return self.__class__(self.conn, self.base, self.index + (ext,))
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 884, in __init__
else: self.setdata()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 908, in setdata
self.data = self.conn.rpath.make_file_dict(self.path)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 287, in make_file_dict
return C.make_file_dict(filename)



The output of the command was captured in another log file and is
a bit longer:

Exception '[Errno 112] Host is down: '/mnt/XXX/XXXXXXXXXXX'' raised of class '<type 'exceptions.OSError'>':
File "/usr/lib/python2.7/dist-packages/rdiff_backup/robust.py", line 32, in check_common_error
try: return function(*args)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 1149, in append
return self.__class__(self.conn, self.base, self.index + (ext,))
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 884, in __init__
else: self.setdata()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 908, in setdata
self.data = self.conn.rpath.make_file_dict(self.path)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 287, in make_file_dict
return C.make_file_dict(filename)

Exception '[Errno 112] Host is down: '/mnt/XXX/XXXXXXXXXXX'' raised of class '<type 'exceptions.OSError'>':
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 304, in error_check_Main
try: Main(arglist)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 324, in Main
take_action(rps)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 280, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 343, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 241, in patch_and_increment
for diff in rorpiter.FillInIter(source_diffiter, dest_rpath):
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 177, in FillInIter
for rp in rpiter:
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 103, in get_diffs
for dest_sig in dest_sigiter:
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 166, in get_sigs
for src_rorp, dest_rorp in cls.CCPP:
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 320, in next
source_rorp, dest_rorp = self.iter.next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 92, in Collate2Iters
try: relem1 = riter1.next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 342, in next
next_elem = self.iter.next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/selection.py", line 132, in Iterate_fast
try: rpath, val = diryield_stack[-1].next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/selection.py", line 120, in diryield
rpath.append, (filename,))
File "/usr/lib/python2.7/dist-packages/rdiff_backup/robust.py", line 32, in check_common_error
try: return function(*args)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 1149, in append
return self.__class__(self.conn, self.base, self.index + (ext,))
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 884, in __init__
else: self.setdata()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 908, in setdata
self.data = self.conn.rpath.make_file_dict(self.path)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 287, in make_file_dict
return C.make_file_dict(filename)

Using rdiff-backup version 1.2.8
Unable to import win32security module. Windows ACLs
not supported by filesystem at /
escape_dos_devices not required by filesystem at /
-----------------------------------------------------------------
Detected abilities for source (read only) file system:
Access control lists On
Extended attributes On
Windows access control lists Off
Case sensitivity On
Escape DOS devices Off
Escape trailing spaces Off
Mac OS X style resource forks Off
Mac OS X Finder information Off
-----------------------------------------------------------------
Unable to import win32security module. Windows ACLs
not supported by filesystem at /mnt/backup/rdiff-backup/XXXXXXXX/system-cache/rdiff-backup-data/rdiff-backup.tmp.0
escape_dos_devices not required by filesystem at /mnt/backup/rdiff-backup/XXXXXXXX/system-cache/rdiff-backup-data/rdiff-backup.tmp.0
-----------------------------------------------------------------
Detected abilities for destination (read/write) file system:
Ownership changing On
Hard linking On
fsync() directories On
Directory inc permissions On
High-bit permissions On
Symlink permissions Off
Extended filenames On
Windows reserved filenames Off
Access control lists On
Extended attributes On
Windows access control lists Off
Case sensitivity On
Escape DOS devices Off
Escape trailing spaces Off
Mac OS X style resource forks Off
Mac OS X Finder information Off
-----------------------------------------------------------------
Backup: must_escape_dos_devices = 0
Starting increment operation / to /mnt/backup/rdiff-backup/XXXXXXXX/system-cache
Traceback (most recent call last):
File "/usr/bin/rdiff-backup", line 30, in <module>
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 304, in error_check_Main
try: Main(arglist)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 324, in Main
take_action(rps)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 280, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/usr/lib/python2.7/dist-packages/rdiff_backup/Main.py", line 343, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 241, in patch_and_increment
for diff in rorpiter.FillInIter(source_diffiter, dest_rpath):
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 177, in FillInIter
for rp in rpiter:
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 103, in get_diffs
for dest_sig in dest_sigiter:
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 166, in get_sigs
for src_rorp, dest_rorp in cls.CCPP:
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 320, in next
source_rorp, dest_rorp = self.iter.next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 92, in Collate2Iters
try: relem1 = riter1.next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 342, in next
next_elem = self.iter.next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/selection.py", line 132, in Iterate_fast
try: rpath, val = diryield_stack[-1].next()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/selection.py", line 120, in diryield
rpath.append, (filename,))
File "/usr/lib/python2.7/dist-packages/rdiff_backup/robust.py", line 32, in check_common_error
try: return function(*args)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 1149, in append
return self.__class__(self.conn, self.base, self.index + (ext,))
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 884, in __init__
else: self.setdata()
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 908, in setdata
self.data = self.conn.rpath.make_file_dict(self.path)
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 287, in make_file_dict
return C.make_file_dict(filename)
OSError: [Errno 112] Host is down: '/mnt/XXX/XXXXXXXXXXX'




Ciao, Gregor
--
-... --- .-. . -.. ..--.. ...-.-

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

Post "Exception [Errno 112] Host is down:" along with - 
On 08/22/2012 02:05 AM, Gregor Zattler wrote:
today rdiff-backup throw an exception

Exception '[Errno 112] Host is down: '/mnt/XXX/XXXXXXXXXXX'' raised of class '<type 'exceptions.OSError'>':

because the host which provided a samba share was not reachable.
This astonishes me because I run rdiff-backup with option
--exclude-other-filesystems and /mnt/XXX/XXXXXXXXXXX is a mount
point for another file system (which normally is not mounted
while backing up. Therefore this exception never occurred
before).

Why then is it exceptional that the samba share is not accessible
any more? Shouldn't it not be touched since it is on another
file system??

There's a bit of a "Catch 22" there. The most straightforward way to find
that the directory is in a different file system is to issue a stat() call
and see if st_dev differs from the value for the current file system. But
that stat() call will fail if the remote host is down.

Doing the exclude by name should avoid the problem. Simply excluding
/mnt/* might suffice, since basically anything under /mnt should be a
different file system.

--
Bob Nichols "NOSPAM" is really part of my email address.
Do NOT delete it.


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

Post "Exception [Errno 112] Host is down:" along with - 
Hi Robert,
* Robert Nichols <rnicholsNOSPAM < at > comcast.net> [23. Aug. 2012]:
On 08/22/2012 02:05 AM, Gregor Zattler wrote:
There's a bit of a "Catch 22" there. The most straightforward way to find
that the directory is in a different file system is to issue a stat() call
and see if st_dev differs from the value for the current file system. But
that stat() call will fail if the remote host is down.

Doing the exclude by name should avoid the problem. Simply excluding
/mnt/* might suffice, since basically anything under /mnt should be a
different file system.

Ah. I didn't do this since I wanted the mount points to be
included in the backup. Thanks for the explanation, though. If
the same problem reoccurs I will follow you advise.

Ciao, Gregor
--
-... --- .-. . -.. ..--.. ...-.-

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

Post "Exception [Errno 112] Host is down:" along with - 
On 08/23/2012 04:03 PM, Gregor Zattler wrote:
Hi Robert,
* Robert Nichols<rnicholsNOSPAM < at > comcast.net> [23. Aug. 2012]:
Doing the exclude by name should avoid the problem. Simply excluding
/mnt/* might suffice, since basically anything under /mnt should be a
different file system.

Ah. I didn't do this since I wanted the mount points to be
included in the backup. Thanks for the explanation, though. If
the same problem reoccurs I will follow you advise.

Any _active_ mount point directory is also going to be excluded by the
--exclude-other-filesystems option, so presumably you're just trying to
include mount point directories that are not currently in use.

If you want to exclude just the active mount points, you can parse those
from /proc/mounts. Doing that right gets messy because of possible
embedded white space in automatically generated mount point names, and
_really_ messy if you want embedded newlines handled safely. I've
attached a fragment of my backup script which does that. (It's just a
fragment, not directly usable on its own. Note the comments about ASCII
NUL separator.)

The other way, which includes _all_ mount point directories as they
exist in the parent file system, is to use the non-inclusive property of
bind-mounts:

mkdir /tmp/tmp-mount
mount --bind / /tmp/tmp-mount

If you now do a backup of /tmp/tmp-mount it will include everything that
is part of the root file system, including the (presumably empty) mount
point directories that were there before anything was mounted on them.
The downside is that you will include automatically generated mount
points like /media/*, and you probably didn't want those.

--
Bob Nichols "NOSPAM" is really part of my email address.
Do NOT delete it.

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

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