rsync: continuar o en order aleatorio

Yo uso rsync sobre tor . Funciona por un time, luego se cae la connection. Eso en sí mismo no es un gran problema y supongo que no es del todo inesperado cuando se ejecutan sesiones largas a lo largo de un tor que lleva muchos minutos completar.

Cuando reinicio rsync los files en el mismo order que la última vez. Eso es un problema porque algunos de estos files cambian a menudo (piense en / var / spool de un server de correo ocupado y se entiende la idea). Esto significa que los files que obtiene se actualizan primero a menudo, mientras que los files que nunca obtiene nunca se transfieren.

Lo que preferiría es que rsync continúe donde lo dejó o al less transfiera los files en order aleatorio.

¿Hay una manera general de hacer eso?

La solución se convirtió en esto:

 find . -maxdepth 4 -depth -type d | shuf | torsocks parallel rsync --delete -zHax --inplace --rsync-path='mkdir -p {} && rsync' ~/{}/ qnek3r4buxhaa6g3.onion:./{}/ 

No es exactamente bonito, pero parece hacer el trabajo.

Use el interruptor --partial . Esto hace que rsync continúe desde donde se quedó.

Hay un par de opciones disponibles. Puede usar reglas de filter en algunas de las ejecuciones de rsync para que los files más ocupados sean ignorados, permitiendo que se transfieran less files ocupados. Si la list de files ocupados es demasiado larga para ensamblarla fácilmente en un set de reglas de filtrado, puede usar –modify-window con un valor grande en algunas de las ejecuciones de rsync. Esto también tendrá el efecto de ignorar files recientemente modificados y transferir files que fueron modificados fuera de la window de modificación.