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

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

Re: [rdiff-backup-users] Updated temp file does not match source -- Stra


From: Robert Nichols
Subject: Re: [rdiff-backup-users] Updated temp file does not match source -- Strange cause
Date: Sun, 05 Apr 2015 16:20:07 -0500
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.6.0

On 03/30/2015 09:58 PM, Robert Nichols wrote:
"UpdateError {pathname} Updated mirror temp file {pathname} does not
match source"

No, the file is not changing. No, nothing is running out of space.  I
see this happening consistently for files with more than one hard link,
and only under very specific conditions:

1. The archive's file system must be ext4.
2. The file system must be mounted with an SELinux context override.
3. The file needs to have more than 1 hard link. (The first link
    gets processed correctly.)

I believe I have found the solution for this. rdiff-backup tries setting
a user.test extended attribute to see whether the archive filesystem
supports extended attributes. It does not consider the possibility that
a user xattr might be allowed and a security xattr not supported, which
can be the case for a filesystem mounted with an overriding SELinux
security context. It ignores the EOPNOTSUPP error from the attempt to
set an SELinux security context and then complains that the security
context of the backup file does not match the source.

Apparently, the 3.x kernels default to "-o user_xattr" when mounting an
ext4 filesystem (but not for ext3), whereas the 2.x kernels default to
"nouser_xattr" for both ext3 and ext4. The solution is to specify "-o
nouser_xattr" explicitly in addition to the context override when
mounting the backup filesystem.

Side note: Digging through the *strace* output from a large Python
           package is not for the faint of heart.

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




reply via email to

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