Let's say I have a file a.txt in LINUX with permission of 0664. When I use rsync to copy the file to my Mac with rsync -r -t -v LINUX MAC, the file's permission becomes 0644.

How can I keep the permission for a file when using rsync? The -g option doesn't work.


You want the -p flag:

    -p, --perms                 preserve permissions

I tend to always use the -a flag, which is an aggregation of -p and several other useful ones:

    -a, --archive               archive mode; equals -rlptgoD (no -H,-A,-X)

Both taken straight from the rsync manpage.

  • 1
    Thanks for the answer, but I got some errors with -a/-p option - unix.stackexchange.com/questions/12203/… – prosseek Apr 28 '11 at 14:58
  • But does it preserve the permissions if the destination machine does not have a username equaling the one who owns the files on the source? (e.g. I have vmail user on source but not on target, does it preserve the username when restoring to source?) – W.M. Apr 22 at 9:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.