Fondo
Por lo general rsync
, verá advertencias si:
- el
rsync
servidor en el otro extremo no posee permisos para ejecutar una acción asociada con lo siguiente:
- propietario
- grupo
- permisos
- tiempos de acceso
- o el sistema de archivos en el lado remoto no admite los mismos tipos de metadatos que el remitente (permisos, propiedad, etc.)
Estos problemas se manifestarán a través del rsync
cliente que intenta comunicarse con el rsync
servidor que aparece como mensajes como este cuando intenta copiar archivos / directorios a un receptor:
propietario
rsync: chown "/ mnt / music / The Fleetwood Mac / Trilogy - 2006 / Trilogy - 2006 - CD 3 / 311_fleetwood_mac _-_ eyes_of_the_world.mp3" falló: Operación no permitida (1)
grupo
rsync: chgrp "/ mnt / music / The Fleetwood Mac Discography by Sketch / Trilogy - 2006 / Trilogy - 2006 - CD 3 / 311_fleetwood_mac _-_ eyes_of_the_world.mp3" falló: Operación no permitida (1)
permisos
rsync: no se pudieron establecer permisos en "/ mnt / music / The Fleetwood Mac Discography by Sketch / Trilogy - 2006 / Trilogy - 2006 - CD 3": Operación no permitida (1)
En los casos en que el lado receptor no puede realizar estas operaciones, puede indicar rsync
que simplemente omita el intento de realizarlas, dándose cuenta de que el destino no será estrictamente idéntico a los metadatos del remitente alrededor de los archivos. Esto seguirá creando copias idénticas de las partes binarias de los archivos y directorios.
Para decirle que rsync
no se preocupe por los metadatos, puede usar --no-OPTION
para desactivar cualquiera de estas opciones implícitas.
página de manual de 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).
Entonces, en nuestro caso, queremos usar algo como esto para deshabilitar las cosas:
$ rsync -avz --no-o --no-g --no-perms <src> <dst>
Ejemplo
$ 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
Alternativa
Otra razón por la que esto sucede es por el uso del -a
interruptor. -a
incluye una familia de interruptores:
-a, --archive archive mode; equals -rlptgoD (no -H,-A,-X)
En lugar de usar -a
, podría usar los interruptores individuales y renunciar a tener que usar los --no-OPTION
's.
Estas son las opciones individuales incluidas con -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
Al hacer las cosas de esta manera, el ejemplo anterior se convertiría en esto:
$ 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