it-swarm-ru.tech

Ошибка «rsync: не удалось установить разрешения для ...» с параметром rsync -a или -p

Когда я использую опцию -a, как спрашивают и отвечают в Сохранить права доступа с помощью rsync , я получаю много ошибок "rsync: не удалось установить разрешения для".

rsync: failed to set permissions on "/ata/text/RCS/jvlc,v": Operation not permitted (1)
rsync: failed to set permissions on "/ata/text/RCS/jvm,v": Operation not permitted (1)
rsync: failed to set permissions on ...

Почему это? Файлы являются обычными файлами с разрешением 0664.

39
prosseek

Скорее всего, rsync на конечной стороне не работает как пользователь с разрешением chmod этих файлов (который должен быть либо владельцем файла, либо пользователем root).

28
cjm

Эта ошибка происходит, потому что операция по изменению разрешений не разрешена. Поэтому либо проверьте, имеют ли пользователь, выполняющий команды, правильные разрешения (например, он не владелец), либо ваша файловая система не поддерживает его.

Вы можете игнорировать предупреждения, указав дополнительные аргументы rsync для --no-perms а также -O (--omit-dir-times) чтобы не пытаться устанавливать разрешения и время изменения файлов/каталогов. Это должно решить ошибки. В качестве альтернативы, избегайте использования -a.

38
kenorb

Как уже было сказано, проблема возникает, когда у вас нет разрешения на изменение прав доступа к файлу в месте назначения rsync. Однако вы можете избежать этого сообщения об ошибке, используя два дополнительных аргумента --no-o а также --no-g.

Пример:

rsync -ahv --no-o --no-g target/ destination/
6
KittMedia