¿Existe alguna forma de indicarle rsync
que se detenga siempre que sea posible de forma limpia? Dos opciones:
- indique
rsync
que deje de transferir el archivo actual, limpie cualquier archivo temporal y salga; - o dejar
rsync
finalizar la transferencia del archivo actual y luego detenerla.
Al hacerlo Ctrl + Cse detienetransferencia mediay deja los archivos temporales ahí, ¿verdad?
Editar
¿Incluso si lo usas --inplace
? ¿Cuál sería el mejor curso de acción? Estoy usando rsync
with --inplace
y tengo que ir rápido, ¿cómo puedo decir "Puede terminar con este archivo y luego salir, o salir ahora, pero limpie este archivo que estaba copiando para no dejar cosas corruptas (no importa si se elimina, puedo hacer una copia de seguridad nuevamente más tarde)” o algo así.
Respuesta1
Si elimina rsync, Ctrl+Clo detendrá a mitad de la transferencia, pero no mantendrá ningún archivo temporal allí a menos que se ejecute con la --partial
opción.
Para aquellos que también estén interesados en simplemente pausar rsync, si lo presiona, Ctrl+Zse pausa el programa. Cuando lo reanude ejecutando fg
o bg
rsync reiterará sobre el archivo que no finalizó y continuará descargando el resto de los archivos. Para ver todos los programas actualmente pausados en ejecuciónjobs
Acerca de --inplace
El problema con --inplace es que no crea un archivo nuevo al actualizar los datos, simplemente escribe en el existente. Si presiona ctrl + c mientras ejecuta --inplace y está actualizando un archivo existente, dejará un archivo a medio terminar sin eliminarlo. Además, si está sincronizando solo archivos nuevos y no actualizando los existentes, cuando corte una transferencia (con Ctrl + C), dejará un archivo a medio terminar que no se eliminará. Solo una nota que no recomendaría --inplace para archivos del sistema operativo. Realmente puedes mejorar algunas cosas (porque cambian con frecuencia)