Rsync 3.0.0pre4 errors with ACLs and Xattrs between OSX and Linux

Wayne Davison wayned at samba.org
Wed Oct 31 00:46:19 GMT 2007


On Tue, Oct 30, 2007 at 06:42:04PM -0400, Paul Ortman wrote:
> It's my understanding that as of 3.0 rsync supports OS X ACLs and
> extended attributes, and that it should be possible to backup a tree
> from an OS X system that contains files and folders with ACLs and
> extended attributes to a Linux host filesystem that has both
> "user_xattrs" and "acl" enabled on the destination file system.

No, OS X ACLs are not standard POSIX ACLs, and cannot be directly sent
to an incompatible host.  You can instead tell the receiving host to use
--fake-super, which will store/retrieve the ACL information as an xattr
(among other things).  This incompatible ACL data is the cause of this
error:

> recv_acl_access: value out of range: 7d3001

That number is nonsensical to a POSIX ACL system, such as Linux.

The next error you cite is a limitation of your file system (probably
ext3) in how large the extended attribute data can be:

> rsync: rsync_xal_set: lsetxattr(".file_with_xattrs.EGbmPN","user.com.apple.ResourceFork") failed: Argument list too long (7)

If lsetxattr() is complaining, there's nothing rsync can do about it
(not without outside assistance).

A helpful user here, Wesley Terpstra, posted a solution that uses an
LD_PRELOAD library to redirect the ResourceFork xattr data into a DB.
Look for the posting with the subject "Linux backup server LD_PRELOAD".
(I haven't tried it, but the code looked good.)

Another solution is to choose a different filesystem, such as (I
believe, but double-check to be sure) xfs.

..wayne..


More information about the rsync mailing list