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

Paul Ortman portman at goshen.edu
Tue Oct 30 22:42:04 GMT 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

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.
I've attempted to set up a test environment for exactly that
purpose, but I'm running into various "protocol" errors.

Client: 
  OS X "Leopard" 10.5
  rsync 3.0.0pre4 compiled from source, version gives:
    
    rsync  version 3.0.0pre4  protocol version 30.PR12
    Capabilities:
        64-bit files, 32-bit inums, 32-bit timestamps, 64-bit long ints,
        socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
        append, ACLs, xattrs, iconv


Server:
  Ubuntu Linux "Gutsy Gibbon" 7.10 
  rsync 3.0.0pre4 compiled from source, version gives:

    rsync  version 3.0.0pre4  protocol version 30.PR12
    Capabilities:
        64-bit files, 64-bit inums, 32-bit timestamps, 64-bit long ints,
        socketpairs, hardlinks, symlinks, IPv6, batchfiles, inplace,
        append, ACLs, xattrs, iconv

  target filesystem = /tmp/xacl
    /tmp/xacl_fs on /tmp/xacl type ext3 (rw,loop=/dev/loop0,user_xattr,acl)


Tests:
  On server run: 
    sudo ./rsync --daemon --config=./rsyncd.conf --no-detach -v

  Server config file:
    
    pid file = /var/run/rsyncd.pid
    [test-tmp]
       path = /tmp/xacl/
       read only = no
       use chroot = yes
       uid = 0
       gid = 0

  On client run: 
    sudo rsync -avHAX ~manager/RSYNC_TEST/ server::test-tmp/

  Results in this error msg on client:
    sending incremental file list
    recv_acl_access: value out of range: 7d3001
    rsync error: error in rsync protocol data stream (code 12) at acls.c(658) [receiver=3.0.0pre4]
    rsync: read error: Connection reset by peer (54)
    rsync error: error in rsync protocol data stream (code 12) at io.c(762) [sender=3.0.0pre4]

  No data is ever transfered to the server.


  Now, without the acls, we get a bit further.  On the client run: 
    sudo rsync -avHX ~manager/RSYNC_TEST/ server::test-tmp/

  Results in this error msg on client:
    sending incremental file list
    created directory /RSYNC
    ./
    .DS_Store
    file_with_ACLs
    file_with_resource_fork
    file_with_xattrs
    file_with_xattrs copy
    dir_with_ACLS/
    macosx_metadata_test/
    macosx_metadata_test/catty_with_no_resource.jpg
    macosx_metadata_test/catty_with_resource.jpg
    macosx_metadata_test/readme.txt
    rsync: rsync_xal_set: lsetxattr(".file_with_xattrs.EGbmPN","user.com.apple.ResourceFork") failed: Argument list too long (7)
    rsync: rsync_xal_set: lsetxattr(".file_with_xattrs copy.Tnlkcp","user.com.apple.ResourceFork") failed: Argument list too long (7)
    rsync: rsync_xal_set: lsetxattr("macosx_metadata_test/.catty_with_resource.jpg.ZkxEYB","user.com.apple.ResourceFork") failed: Argument list too long (7)

    sent 675079 bytes  received 187 bytes  1350532.00 bytes/sec
    total size is 134108  speedup is 0.20
    rsync error: some files could not be transferred (code 23) at main.c(1053) [sender=3.0.0pre4]

  The files seem to be sent just fine, but I can't tell that the
  xattrs have been transfered at all.


The test files as they appear on OS X are available as a xar archive at:
  http://www.goshen.edu/~portman/OSX/rsync_test.xar


Is this a bug, or isn't this supposed to work?  Thanks for all your
help in advance.

- -- 
Paul Ortman

PGP Key: 55602C81
- --
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFHJ7M8fw8KGlVgLIERAsWrAJwPJQ4voHhp1pPBQbXS5p+jRt6UQgCfd1YB
jh509+/+O8CsdOipNLzY64E=
=YVbY
-----END PGP SIGNATURE-----


More information about the rsync mailing list