сохранить разрешение с помощью scp

25

SCP, похоже, не сохраняет штампы собственности, даже если используется с параметром -p.

scp -p /mysql/serv/data_summary.* some_server:/mysql/test/

Эти файлы принадлежат mysql, и я хочу, чтобы на целевом сервере было назначено одно и то же право собственности. Мне нужно скопировать файлы с правами root на оба сервера из-за некоторых проблем администратора. Не могу сменить на mysql @

shantanuo
источник

Ответы:

37

Попробуйте использовать rsync, у него гораздо больше преимуществ, кроме сохранения прав собственности, разрешений и дополнительных копий:

rsync -av source 192.0.2.1:/dest/ination

Кроме того, поскольку rsync использует ssh, он должен работать там, где работает scp.

aseq
источник
ssh поддерживает -i myfile.pem, а rsync, похоже, не имеет опции -i
shantanuo
5
@shantanuo: Использованиеrsync -e 'ssh -i myfile.pem' -insert_other_rsync_options_here
Янне Пиккарайнен
14

Это правильно. "-p" не делает этого. Смотрите справочную страницу:

     -p Сохраняет время модификации, время доступа и режимы из
             исходный файл.

Обратите внимание, что в нем указано время и режимы, а НЕ пользователь / группа. Вам больше повезет с «rsync», так как он имеет различные возможности для сохранения разрешений при копировании между разнородными системами. «-p» в rsync, например.

NEX7
источник