3.1.1pre1 on RHEL 6.5. The combination of --itemize-changes --xattrs --fake-super causes a ".f........x" or ".d........x" line to be printed for every unmodified file or directory in the transfer: $ mkdir a $ touch a/1 a/2 a/3 $ rsync -rtiX --fake-super a/ b cd+++++++++ ./ >f+++++++++ 1 >f+++++++++ 2 >f+++++++++ 3 $ rsync -rtiX --fake-super a/ b .d........x ./ .f........x 1 .f........x 2 .f........x 3
It works for me. Can you verify if it is actually setting the extended attributes with getfattr? If not then you probably need the user_xattr mount option.
Yes, it is: $ getfattr -d -m - b/1 # file: b/1 security.selinux="unconfined_u:object_r:user_home_t:s0" user.rsync.%stat="100664 0,0 0:0" user.rsync.security.selinux="unconfined_u:object_r:user_home_t:s0" The problem seems to be SELinux-related: I can reproduce this on Fedora 20 with SELinux enabled (enforcing or permissive), and SELinux is enabled (enforcing) on the RHEL 6 system. On Fedora 20 with SELinux disabled, the problem does not occur.
That makes sense. I was testing on Gentoo without any SELinux.