Я скопировал каталог с файлами исходного кода на языке C и некоторыми сценариями оболочки из моего 64-разрядного ноутбука Ubuntu 12.10 на портативный жесткий диск некоторое время назад. Я скопировал его под root login. Теперь, когда я скопировал его с портативного диска на тот же ноутбук под корневым входом, я заметил, что права доступа к файлам изменились с исходного 755 на 400, что привело к сбою некоторых сценариев. Как скопировать на жесткий диск, чтобы каталог и его содержимое сохраняли разрешения?
Возможно, это не так, но это может зависеть от файловой системы: например. Форматированные диски FAT32 не поддерживают разрешения файлов. взгляните на этот вопрос: Как изменить права доступа к файлам на диске FAT32?
Кроме этого, я бы посмотрел руководство rsync.
rsync -aPv what where
-a для архивного режима, который часто вам нужен: разрешения / владелец / группа сохранены, рекурсивное поведение и довольно много других сотрудников. (-P и -v увеличивать многословие и дает вам лучший взгляд)
, в частности, флаг -p будет хранить ваши разрешения.