"Rsync: не вдалося встановити дозволи на ..." помилка з параметром rsync -a або -p


37

Коли я використовую параметр -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.


Чи можете ви надати нам ls -al вихід для деяких із файлів, на які постраждали?
пдо

Відповіді:


28

Швидше за все, rsync на кінцевому кінці не працює як користувач з дозволом на chmodті файли (які повинні бути або власниками файлу, або root).


Щойно сталося, що файлами належить _www. Зміна власника вирішила це питання. Дякую за допомогу.
prosseek

2
Слід зазначити, що ви отримаєте цю помилку, навіть якщо користувач rsync перебуває в одній групі a файли. Щоб виправити цю помилку, файли повинні належати тому ж користувачеві, що й rsync, а не лише групі.
Серін

34

Ця помилка трапляється, оскільки операція щодо зміни дозволів заборонена. Тож перевірте, чи користувач, що виконує команди, має правильні дозволи (наприклад, він не є власником), або ваша файлова система не підтримує його.

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


6

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

Приклад:

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

4
--no-ownerі --no-groupне контролюйте дозволи. Ви хочете--no-perms . Якщо ви хочете уникати спроб змінити право власності, вам, напевно, знадобляться всі три прапори.
roaima

1

Фон

Як правило, rsyncви побачите попередження, якщо:

  • rsyncсервер на іншому кінці не має дозволу на виконання дії , пов'язане з наступним:
    • власник
    • групи
    • дозволи
    • час доступу
  • або файлова система на віддаленій стороні не підтримує ті ж типи метаданих, що й відправник (дозволи, право власності тощо)

Ці проблеми проявлятимуться через rsyncклієнта, який намагається спілкуватися з rsyncсервером, що відображається як такі повідомлення, як при спробі скопіювати файли / каталоги на приймач:

власник

rsync: chown "/ mnt / music / The Fleetwood Mac / Trilogy - 2006 / Trilogy - 2006 - CD 3 / 311_fleetwood_mac _-_ eyes_of_the_world.mp3" Не вдалося: Операція заборонена (1)

групи

rsync: chgrp "/ mnt / music / Дискографія The Fleetwood Mac за ескізом / Трилогія - 2006 / Трилогія - 2006 - CD 3 / 311_fleetwood_mac _-_ eyes_of_the_world.mp3" Не вдалося: Операція заборонена (1)

дозволи

rsync: не вдалося встановити дозволи на "/ mnt / music / The Fleetwood Mac Discography by Sketch / Trilogy - 2006 / Trilogy - 2006 - CD 3": Операція заборонена (1)

У випадках, коли приймаюча сторона не може виконати ці операції, ви можете проінструктувати rsync просто пропустити спробу їх виконувати, розуміючи, що пункт призначення не буде суто ідентичним метаданим відправника навколо файлів. Це все одно створить однакові копії двійкових частин файлів та каталогів.

Щоб сказати rsyncне турбуватися про метадані, якими ви можете скористатися--no-OPTION функцією, щоб вимкнути будь-який із цих варіантів.

сторінка людини rsync
--no-OPTION
      You  may  turn off one or more implied options by prefixing the option name
      with “no-”.  Not all options may be prefixed with a “no-”: only options that
      are  implied  by  other  options (e.g.  --no-D,  --no-perms)  or  have
      different  defaults  in  various  circumstances (e.g.  --no-whole-file,
      --no-blocking-io, --no-dirs).  You may specify either the short or the long
      option name after the “no-” prefix (e.g. --no-R is the same as --no-relative).

      For  example: if you want to use -a (--archive) but don’t want -o (--owner),
      instead of converting -a into -rlptgD, you could specify -a --no-o (or -a
      --no-owner).

      The order of the options is important:  if you specify --no-r -a, the -r
      option would end up being  turned  on,  the  opposite  of  -a  --no-r.
      Note  also that the side-effects of the --files-from option are NOT positional,
      as it affects the default state of  several  options and slightly changes the
      meaning of -a (see the --files-from option for more details).

Тож у нашому випадку ми хочемо використовувати щось подібне для відключення речей:

$ rsync -avz --no-o --no-g --no-perms <src> <dst>

Приклад

$ rsync -avz --delete --no-o --no-g --no-perms The\ Fleetwood\ Mac/ /mnt/music/The\ Fleetwood\ Mac/.
sending incremental file list
Trilogy - 2006/
Trilogy - 2006/Trilogy - 2006 - CD 3/
Trilogy - 2006/Trilogy - 2006 - CD 3/301_fleetwood_mac_-_love_in_store.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/302_fleetwood_mac_-_cant_go_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/303_fleetwood_mac_-_thats_alright.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/304_fleetwood_mac_-_book_of_love.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/305_fleetwood_mac_-_gypsy.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/306_fleetwood_mac_-_only_over_you.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/307_fleetwood_mac_-_empire_state.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/308_fleetwood_mac_-_straight_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/309_fleetwood_mac_-_hold_me.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/310_fleetwood_mac_-_oh_diane.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/311_fleetwood_mac_-_eyes_of_the_world.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/312_fleetwood_mac_-_wish_you_were_here.mp3

sent 61993245 bytes  received 289 bytes  17712438.29 bytes/sec
total size is 2596551439  speedup is 41.88

Альтернатива

Ще одна причина цього відбувається через використання -aперемикача. -aвключає в себе сімейство комутаторів:

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

Замість використання -aви можете використовувати окремі перемикачі та відмовитися від використання --no-OPTION.

Це окремі варіанти, що входять до комплекту -a
    -r, --recursive             recurse into directories
    -l, --links                 copy symlinks as symlinks
    -p, --perms                 preserve permissions
    -t, --times                 preserve modification times
    -o, --owner                 preserve owner (super-user only)
    -g, --group                 preserve group
    -D                          same as --devices --specials
        --devices               preserve device files (super-user only)
        --specials              preserve special files

Як зробити так, наведений вище приклад стане таким:

$ rsync -rltDvz --delete The\ Fleetwood\ Mac/ /mnt/music/The\ Fleetwood\ Mac/.
sending incremental file list
Trilogy - 2006/
Trilogy - 2006/Trilogy - 2006 - CD 3/
Trilogy - 2006/Trilogy - 2006 - CD 3/301_fleetwood_mac_-_love_in_store.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/302_fleetwood_mac_-_cant_go_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/303_fleetwood_mac_-_thats_alright.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/304_fleetwood_mac_-_book_of_love.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/305_fleetwood_mac_-_gypsy.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/306_fleetwood_mac_-_only_over_you.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/307_fleetwood_mac_-_empire_state.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/308_fleetwood_mac_-_straight_back.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/309_fleetwood_mac_-_hold_me.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/310_fleetwood_mac_-_oh_diane.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/311_fleetwood_mac_-_eyes_of_the_world.mp3
Trilogy - 2006/Trilogy - 2006 - CD 3/312_fleetwood_mac_-_wish_you_were_here.mp3

sent 61993245 bytes  received 289 bytes  17712438.29 bytes/sec
total size is 2596551439  speedup is 41.88
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.