Режим архивирования rsync

Я читал много статей о rsync и его переключателе. Согласно теории, я понял, что он сохраняет много свойств, таких как разрешение, время, группа, владелец и т. Д., Но почему это не работает, когда я пытаюсь это сделать?

Есть два пользователя sam и pam . Я пытаюсь rsync файл из /home/sam в /home/pam , сохраняя его владельца и группу.

 [sam@localhost sam]$ ll -rwx---rx 1 sam sam 0 Jul 18 18:39 abc 

Если я попытаюсь выполнить rsync (после входа в систему как пользовательский pam ), скопированные файлы не будут иметь sam качестве владельца или группы.

 [pam@localhost pam]$ rsync -a /home/sam/* /home/pam [pam@localhost pam]$ ll -rwx---rx 1 pam pam 0 Jul 18 18:39 abc 

Почему он не сохраняет владельца и группу для abc как sam ?

Сохраняющий владелец ( -o , включен в -a ) – это функция, доступная только для суперпользователя (root). Группа сохранения ( -g , включенная в -a ) ограничена случаем, когда пользователь, выполняющий rsync (на целевом сайте), является членом группы. Rsync ведет себя так, потому что в большинстве вариантов unix это случаи, когда разрешено устанавливать владельца и группу целевого файла.

Вы можете либо попытаться выполнить команду с использованием пользователя root, либо добавить параметр --super или --fake-super .

--super все равно попытается изменить владельца и группу, но только если ОС это --super . Не все операционные системы позволят, что недавние версии Solaris являются хорошим примером.

--fake-super добавит расширенные атрибуты в файлы назначения, чтобы имитировать (подделку) владельца и группу файла, добавив разрешения.