linux rsync error-code

linux - Lista completa de códigos de error rsync



error-code (1)

Estoy escribiendo un script que hace instantáneas diarias de los directorios personales de los usuarios. Primero hago una carrera en seco usando:

rsync -azvrn --out-format="%M %f" source/dir dest/dir

y luego la operación real rsync (eliminando la opción -n ).

Estoy tratando de analizar la salida de la carrera en seco. Específicamente, estoy interesado en conocer la causa exacta del error rsync (si se produjo uno). ¿Alguien sabe de

  1. ¿Los errores rsync más comunes y sus códigos?
  2. ¿Un enlace a una página de códigos de error rsync completa?

Lo más importante es que rsync (al menos en CentOs 5) no devuelve un código de error. Más bien muestra los errores internamente y regresa con 0. Como así:

sending incremental file list rsync: link_stat "/data/users/gary/testdi" failed: No such file or directory (2) sent 18 bytes received 12 bytes 60.00 bytes/sec total size is 0 speedup is 0.00 (DRY RUN) rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1039) [sender=3.0.6]

¿Alguien ha tenido que analizar los errores de rsync y tener una sugerencia sobre cómo almacenar los estados de retorno de rsync? Creo que, cuando se transfieren varios archivos, los errores pueden surgir por archivo y se recopilan al final como se muestra en la última línea de código anterior.


Por la página de rsync "man", aquí están los códigos de error que podrían devolver y lo que significan. Si lo haces en bash, podrías mirar $?

0 Success 1 Syntax or usage error 2 Protocol incompatibility 3 Errors selecting input/output files, dirs 4 Requested action not supported: an attempt was made to manipulate 64-bit files on a platform that cannot support them; or an option was specified that is supported by the client and not by the server. 5 Error starting client-server protocol 6 Daemon unable to append to log-file 10 Error in socket I/O 11 Error in file I/O 12 Error in rsync protocol data stream 13 Errors with program diagnostics 14 Error in IPC code 20 Received SIGUSR1 or SIGINT 21 Some error returned by waitpid() 22 Error allocating core memory buffers 23 Partial transfer due to error 24 Partial transfer due to vanished source files 25 The --max-delete limit stopped deletions 30 Timeout in data send/receive 35 Timeout waiting for daemon connection

Nunca he visto una lista completa de "errores más comunes", pero estoy apostando que el código de error 1 estaría en la parte superior.