Ce qui suit s'applique à rsync version 3.0.0 et supérieure. Les options décrites ci-dessous ont été introduites dans cette version le 1er mars 2008.
Avec --info=progress2 vous pouvez également utiliser --no-inc-recursive (ou son raccourci --no-i-r alias) pour désactiver la récursion incrémentale.
Cela permettra de construire la liste complète des fichiers au début, plutôt que de découvrir progressivement plus de fichiers au fur et à mesure du transfert. Comme il connaîtra tous les fichiers avant de commencer, il donnera un meilleur rapport sur la progression globale. Ceci s'applique au nombre de fichiers - il n'y a pas de rapport de progression basé sur la taille des fichiers.
Cela implique un compromis. Construire la liste complète des fichiers à l'avance est plus coûteux en mémoire et peut retarder considérablement le début du transfert réel. Comme on peut s'y attendre, plus il y a de fichiers, plus le délai sera long et plus la mémoire nécessaire sera importante.
Ce qui suit est extrait du manuel rsync (source - http://rsync.samba.org/ftp/rsync/rsync.html ):
-r, --récursif
Ceci indique à rsync de copier les répertoires de manière récursive. Voir aussi --dirs (-d). À partir de rsync 3.0.0, l'algorithme récursif utilisé est maintenant un balayage incrémental qui utilise beaucoup moins de mémoire qu'auparavant et commence le transfert après que le balayage des premiers répertoires ait été effectué. Ce balayage incrémentiel n'affecte que notre algorithme récursif, et ne modifie pas un transfert non récursif. Il n'est également possible que lorsque les deux extrémités du transfert sont au moins en version 3.0.0.
Certaines options nécessitent que rsync connaisse la liste complète des fichiers, ces options désactivent donc le mode de récursion incrémental. Il s'agit de : --delete-before, --delete-after, --prune-empty-dirs, et --delay-updates. De ce fait, le mode de suppression par défaut lorsque vous spécifiez --delete est maintenant --delete-during lorsque les deux extrémités de la connexion sont au moins 3.0.0 (utilisez --del ou --delete-during pour demander explicitement ce mode de suppression amélioré). Voir aussi l'option --delete-delay qui est un meilleur choix que l'utilisation de --delete-after.
La récursion incrémentale peut être désactivée à l'aide de la commande --no-inc-recursive ou son option plus courte --no-i-r alias.
Voir aussi https://rsync.samba.org pour connaître les différences de version spécifiques (faites défiler la page vers le bas et vérifiez les liens vers les nouvelles versions).
22 votes
Depuis rsync 3.1.0, il y a maintenant une progression de base du transfert total de fichiers inclus. Voir la réponse serverfault.com/a/441724/107793 pour les détails.
17 votes
Veuillez modifier la réponse acceptée. La réponse de @David est complètement inutile.
0 votes
Voir aussi unix.stackexchange.com/q/215271/9454