How do I set destination permissions with rsync (chown chmod)
rsync needs to be told that you want to set the permissions and owner/group information. It would be logical to assume that having
--chown would tell that but they don't.
For permissions to propagate you need the
-p flag and for owner/group you need
--owner --group or
-og flags for the owner/group/permission information to be set.
The documentation is a bit unclearly written so it isn't clear how the permissions are handled with different combinations or if existing files are affected.
I found this StackOverflow version of the same question to be more helpful, because it seems Roger and I have rsyncs with different preferences for the format of
--chmod (mine is 3.1.3 from a Debian package).
As Sami said, rsync needs to be told "permissions", so either include
-p, or have it implicitly included by using
-a. But then, to get the command to actually run, you need (e.g. for directories 755 and files 644)
--chmod=Du=rwx,Dg=rx,Do=rx,Fu=rw,Fg=r,Fo=r, rather than the "D755,F644" format.