Hi,
I've already asked in IRC, but i somehow can't belive this isn't
possible.
I have the folowing testcase (local, on an ext3 fs, no xattr):
.
??? [dr-xr-xr-x] dir1
??? ??? [-r--r--r--] text.txt
??? [drwxr-xr-x] target
and what i want after using 'rsync <some options> dir1 target' is:
.
??? [dr-xr-xr-x] dir1
??? ??? [-r--r--r--] text.txt
??? [drwxr-xr-x] target
??? [dr-xr-xr-x] dir1
??? [-r--r--r--] text.txt
Now i did some tries:
"rsync -rvt dir1 target" throw an error message:
mkstemp "../target/dir1/.text.txt.AQGaMg" failed: Permission denied
And that's what rsync did so far:
.
??? [dr-xr-xr-x] dir1
??? ??? [-r--r--r--] text.txt
??? [drwxr-xr-x] target
??? [dr-xr-xr-x] dir1
What i'm confused about is, after i did the exatcly same command again:
.
??? [dr-xr-xr-x] dir1
??? ??? [-r--r--r--] text.txt
??? [drwxr-xr-x] target
??? [dr-xr-xr-x] dir1
??? [-r--r--r--] text.txt
And no error message was thrown.
The only possible way to sync such a folder without any error message
was to change the permissions by hand with '--chmod=u+w' and
'--perms'.
The disadvantage: All previous file permissions are 'lost' in the copy.
So i tried after the first sync a second sync where only the file
permissions shall be synced. Thus after the latter command i have:
.
??? [dr-xr-xr-x] dir1
??? ??? [-r--r--r--] text.txt
??? [drwxr-xr-x] target
??? [drwxr-xr-x] dir1
??? [-rw-r--r--] text.txt
But after "rsync --perms -r -v dir1 target" i've got an error
message
again:
mkstemp "../target/dir1/.text.txt.AP4sMs" failed: Permission denied
And the filetree:
.
??? [dr-xr-xr-x] dir1
??? ??? [-r--r--r--] text.txt
??? [drwxr-xr-x] target
??? [dr-xr-xr-x] dir1 <-- correct
??? [-rw-r--r--] text.txt <-- wrong
Ok. So my final question is: Is it even possible what i want to
do with rsync? The real situation is seriously far more complex (dir1
is in fact much bigger) and i realy want somehow to preserve the file
permissions in the copy.
Meanwhile thanks for any advise.