Zachowaj uprawnienia za pomocą rsync

57

Załóżmy, że mam plik a.txt w systemie LINUX z uprawnieniem 0664. Gdy używam rsync do skopiowania pliku na komputer Mac rsync -r -t -v LINUX MAC, uprawnienie do pliku to 0644.

Jak mogę zachować uprawnienia do pliku podczas korzystania z rsync? Opcja -g nie działa.

prosseek
źródło

Odpowiedzi:

75

Chcesz flagę -p:

    -p, --perms                 preserve permissions

Zazwyczaj zawsze używam flagi -a, która jest agregacją -p i kilku innych przydatnych:

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

Oba pochodzą prosto ze strony rsync .

jmtd
źródło
1
Dzięki za odpowiedź, ale dostałem kilka błędów z opcją -a / -p - unix.stackexchange.com/questions/12203/…
prosseek
Ale czy zachowuje uprawnienia, jeśli komputer docelowy nie ma nazwy użytkownika równej tej, która jest właścicielem plików w źródle? (np. mam vmailużytkownika na źródle, ale nie na celu, czy zachowuje nazwę użytkownika podczas przywracania do źródła?)
WM