05/09/2025

rsyncy – Une barre de progression pour suivre l’avancement de Rsync

Par admin

rsyncy - Une barre de progression pour suivre l’avancement de Rsync

Vous venez de lancer un bon gros rsync en prod pour migrer 3 téraoctets de données et votre boss vous sur-saoule toutes les 10 minutes avec des : “Alors, ça en est où ?” en boucle et vous, en bonne victime, vous répondez “Ça avance chef, ça avance…”.

On peut faire mieux non ? Et oui, avec
rsyncy
qui vous permet au lieu d’avoir un rsync muet qui vous laisse dans le noir, de profiter d’une vraie barre de progression visuelle. Comme ça, vous voyez le pourcentage d’avancement, la vitesse de transfert, le volume copié, le temps écoulé, l’ETA, le nombre de fichiers traités… Bref, toutes les infos pour répondre factuellement à votre hiérarchie et prendre des décisions éclairées de grand professionnel qui aura bientôt une augmentation de salaire ^^.

L’installation est super simple. Vous avez plusieurs options selon votre setup :

# One-liner universel
curl https://laktak.github.io/rsyncy.sh|bash

# Sur macOS avec Homebrew
brew install rsyncy

# Avec Go
go install github.com/laktak/rsyncy/v2@latest

# Avec pipx (version Python)
pipx install rsyncy

Et une fois installé, vous pouvez soit lancer rsyncy directement avec les mêmes arguments que rsync :

rsyncy -a /source/ /destination/

Soit piper la sortie de votre rsync habituel vers rsyncy :

rsync -a --info=progress2 -hv /source/ /destination/ | rsyncy

Ce qui est top, c’est qu’avec ce paramètre, rsyncy ajoute automatiquement les arguments nécessaires pour avoir le maximum d’informations comme ça y’a plus besoin de vous rappeler des bonnes options.

La barre de progression affichera quelque chose comme ça :

Et là, vous avez tout… la barre visuelle, le pourcentage, les données transférées, la vitesse actuelle, le temps écoulé et le nombre de fichiers traités. C’est clair, net et précis.

Pour les environnements où les couleurs posent problème (certains logs, scripts automatisés), vous pouvez les désactiver avec :

NO_COLOR=1 rsyncy /source/ /destination/

Pour les devs qui veulent debugger ou enregistrer leurs transferts rsync, l’auteur recommande d’utiliser “
pipevcr
”, un autre de ses outils qui permet d’enregistrer et rejouer des flux de données. Pratique pour tester rsyncy sans lancer de vrais transferts.

Voilà, comme ça avec rsyncy, vous savez exactement où vous en êtes et vous pouvez estimer si vous allez respecter votre fenêtre de maintenance, prévenir si ça va déborder, ou rassurer tout le monde que tout se passe bien.

Source

Source : korben.info