Page 1 sur 1
Afficher évolution de la commande
Posté : mer. 5 févr. 2025 23:21
par Genevrier1
Bonjour,
Pour sauvegarder mon "home", j'utilise la commande :
Code : Tout sélectionner
sudo rsync -a /home/michel/ /media/michel/sauveg/home20250127a
Je souhaiterais afficher une barre de progression de la copie...
Qui peut m'aider ?
D'avance merci...
Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 02:02
par alain
Bonjour genevrier.
Plusieurs solutions existent.
En premier, je te donne celle avec pv, elle est plus complexe et longue à taper, mais très intéressante et surtout peut te servir pour d'autres commandes que rsync:
Installe la commande pv:
Puis utilise là comme cela par exemple:
Code : Tout sélectionner
sudo rsync -a /home/michel/ /media/michel/sauveg/home20250127a | pv -l -s $(du -sb /home/michel/ | awk '{print $1}')
Si ça ne te convient pas ou que tu veuilles améliorer la visu de la progression, regarde les divers options de pv dans:
Plus simple, mais moins valorisant techniquement. Si tu ne veux pas t'embêter avec pv, dans le man de rsync je vois qu'il existe une option --progress (ligne 3530 du man)
Ce qui donnerait :
Code : Tout sélectionner
sudo rsync -a --progress /home/michel/ /media/michel/sauveg/home20250127a
Cela affiche la progression de chaque fichier en temps réel:
This option tells rsync to print information showing the progress of the transfer. This gives a bored user something to watch.
dixit le man. Donc si t'es "bored" ça te conviendra.
Avec les options tu peux faire des trucs intéressants.

Il faut prendre l'habitude de lire le man d'une commande, souvent il existe une option qui fait ce que l'on cherche. Et pour la progression si pas d'option prévu il y a pv ça marche avec tout

Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 08:00
par Armaggion
Il faut savoir que cette barre de progression intégrée à rsync n'est pas fiable sur des arborescences significatives, mais elle a le mérite d'exister.
Pas fiable signifie qu'elle va monter très vite et plafonner dans les 95% le reste du temps.
Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 08:04
par alain
Bonjour Armaggion.
Je ne l'ai pas testé, juste vu son existence.
Merci pour l'info

Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 08:43
par tioker
Armaggion a écrit : jeu. 6 févr. 2025 08:00
Il faut savoir que cette barre de progression intégrée à rsync n'est pas fiable ...
Bonjour,
Les réponses sont très intéressantes. Je regarderai un jour si besoin.
Mais il faut se rappeler une chose (je pense): une copie peut savoir rapidement quel volume on doit copier et de quelle vitesse de transfert on dispose.
rsync ne connait pas le volume de fichiers à synchroniser puisque c'est la destination qui lui dira si il faut mettre à jour ou non. Donc la barre de progression sera toujours indicative, pas vraiment fiable (je pense).
PS: Moi j'utilise
rsync de cette manière pour le côté "verbose" et la sauvegarde des fichiers destination mis à jour
Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 08:49
par Genevrier1
Merci à tous,
J'ai testé la commande d'Alain:!
sudo rsync -a /home/michel/ /media/michel/sauveg/home20250127a | pv -l -s $(du -sb /home/michel/ | awk '{print $1}')
Et ca m'affiche la progression en temps, c'est déjà ça, mais je souhaiterais si possible soit l'affichage en % et/ou l'affichage du temps restant...
et je ne suis pas bien à l'aise avec "man"...
D'avance merci pour un coup de main supplémentaire...
Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 10:29
par tioker
Genevrier1 a écrit : jeu. 6 févr. 2025 08:49
D'avance merci pour un coup de main supplémentaire...
Voir ma réponse. Tu n'auras pas bien mieux que ce qu'on t'a dit...(je pense

).
Mais si tu ne veux pas te faire [chi]/[su]er devant ton écran tu peux toujours lancer la commande en détaché genre ...
¹
Ne pas oublier le "&" à la fin sans quoi, si tu sors du terminal, le process détaché s'arrêtera aussi (je continue de penser...).
Et mets un log si tu veux savoir ce qui s'est passé.
Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 18:46
par Armaggion
La barre de progression ne peut pas être fiable, par définition.
Une barre de progression, c'est la représentation graphique de :
Temps écoulé / Temps nécessaire.
Le temps nécessaire est inconnu puisque c'est seulement après avoir vérifié si un fichier doit être synchronisé que la commande peut calculer le temps nécessaire à la copie. En conséquence, la barre avance au départ assez vite, puis le système réévalue le temps nécessaire et ton 3/4 devient 3/5, puis la copie déroule, arrive à 4/5 et se découvre de nouvelles copies à faire et passe à 4/7, exécute les copies, montre à 6/7 et découvre de nouvelles choses à faire, donc retombe à 6/8, etc. Tu as compris l'idée
Ce n'est pas du bug ou de l'incompétence, c'est juste pas possible, sauf à faire une évaluation préalable exhaustive de tout ce qu'il y aura à faire... ce qui prend un temps inutile, surtout si tu synchronises plusieurs dizaines de gigaoctets pour seulement 4 petits fichiers à synchroniser.
Re: Afficher évolution de la commande
Posté : jeu. 6 févr. 2025 21:53
par alain
Armaggion a écrit : jeu. 6 févr. 2025 18:46
La barre de progression ne peut pas être fiable, par définition.
C'est tout à fait exact...
Mais ça à l'avantage de t'occuper si tu es "bored" comme le dit le man de rsync
des fois ça va vite, des fois ça ralenti, même des fois on dirait que c'est à l'arrêt...Mais quel suspens!

C'est toujours mieux qu'un écran noir
