[Bug 8130] ACL / link-dest / fake-super do not work together

samba-bugs at samba.org samba-bugs at samba.org
Sat May 14 01:31:29 MDT 2011


https://bugzilla.samba.org/show_bug.cgi?id=8130

--- Comment #3 from Ben <az9901 at gmail.com> 2011-05-14 07:31:28 UTC ---
Hello,
Thank you for your help !
Of course yes, here is a "script" to reproduce the problem :



# Source and destination :
# Init some vars
DEST_SRV=mytestserver.com
DEST_USR=bob        #must not be root
DEST_DIR=/home/test #must be mounted with user_xattr

# Source :
# First let's make some test files
# These files will never change during our tests, to let Rsync hard link them
together !
cd /tmp
mkdir rsynctest
echo file1 > rsynctest/file1
echo file2 > rsynctest/file2



# Source :
# First Rsync to the destination
rsync -a --rsync-path="rsync --fake-super" rsynctest/
$DEST_USR@$DEST_SRV:$DEST_DIR/rsynctest1

# Source :
# Let's link-dest previous Rsync, without ACL, to see if files are linked
together (they should be)
rsync -a --rsync-path="rsync --fake-super" --link-dest="$DEST_DIR/rsynctest1/"
rsynctest/ $DEST_USR@$DEST_SRV:$DEST_DIR/rsynctest2

# Destination :
# Let's find out, on the destination, do the following to confirm links :
ls -li $DEST_DIR/rsynctest1
ls -li $DEST_DIR/rsynctest2

# Destination :
# In addition, on the destination, do the following to confirm that extended
attributes have been set by fake-super (user.rsync.%stat) :
getfattr -d -m - $DEST_DIR/rsynctest1/*
getfattr -d -m - $DEST_DIR/rsynctest2/*

###### So great, all works fine without ACL
###### So let's go with ACL



# Source :
# First Rsync to the destination
rsync -aA --rsync-path="rsync --fake-super" rsynctest/
$DEST_USR@$DEST_SRV:$DEST_DIR/rsynctest3

# Source :
# Let's link-dest previous Rsync, with ACL, to see if files are linked together
(they should be)
rsync -aA --rsync-path="rsync --fake-super" --link-dest="$DEST_DIR/rsynctest3/"
rsynctest/ $DEST_USR@$DEST_SRV:$DEST_DIR/rsynctest4

# Destination :
# Let's find out, on the destination, do the following, and you will see that
files are not hard linked together :
ls -li $DEST_DIR/rsynctest3
ls -li $DEST_DIR/rsynctest4

# Destination :
# In addition, on the destination, do the following to confirm that extended
attributes have been set by fake-super (user.rsync.%stat AND user.rsync.%aacl)
and are exactly the same between the 2 Rsync (of course yes) :
getfattr -d -m - $DEST_DIR/rsynctest3/*
getfattr -d -m - $DEST_DIR/rsynctest4/*

###### So using -A, files are not linked as they should be.
###### Seems that fake-super is not --acls aware.

-- 
Configure bugmail: https://bugzilla.samba.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the rsync mailing list