[Bug 14183] New: rsync fails transferring only attributes for file without write permission

samba-bugs at samba.org samba-bugs at samba.org
Tue Nov 5 22:20:18 UTC 2019


            Bug ID: 14183
           Summary: rsync fails transferring only attributes for file
                    without write permission
           Product: rsync
           Version: 3.1.3
          Hardware: x64
                OS: Mac OS X
            Status: NEW
          Severity: normal
          Priority: P5
         Component: core
          Assignee: wayne at opencoder.net
          Reporter: bugzilla.samba.org at edp.org
        QA Contact: rsync-qa at samba.org

When a file’s extended attributes have changed but its contents have not and
the user does not have write permission for the source file (irrespective of
the destination file permissions), rsync fails with a permission error from

Using rsync 3.1.3 on macOS 10.14.6, the output of these commands:

    cd /var/tmp
    mkdir stage
    mkdir stage/{source,destination}
    touch stage/source/foo
    rsync -a --xattrs stage/source/ stage/destination/
    xattr -w abc def stage/source/foo
    chmod ugo-w stage/source/foo
    rsync -a --xattrs stage/source/ stage/destination/


    rsync: rsync_xal_set:
lsetxattr("/private/var/tmp/stage/destination/foo","abc") failed: Permission
denied (13)
    rsync error: some files/attrs were not transferred (see previous errors)
(code 23) at main.c(1189) [sender=3.1.3]

Note that if "echo ghi >stage/source/foo" is inserted after the first rsync,
the second rsync is perfectly happy to update the file, including the extended
attributes. Only when the extended attributes but not the contents are being
updated does rsync encounter the permissions problem.

These commands demonstrate the problem with both sides local, but it occurs
with a remote side as well.

This problem is not evident in the rsync 2.6.9 distributed by Apple with macOS.

You are receiving this mail because:
You are the QA Contact for the bug.

More information about the rsync mailing list