Afficher évolution de la commande

Postez ici toutes vos demandes d’assistance générale concernant le fonctionnement de Linux Mint, qui n'entrent pas dans les autres rubriques.
Répondre
Genevrier1
Messages : 779
Enregistré le : mer. 15 sept. 2021 20:14
Localisation : Liège/Belgique
Contact :

Afficher évolution de la commande

Message 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...
Mint 22 cinamon 5.6.7
Intel® Core™ i3-2120 CPU @ 3.30GHz × 4
Intel® HD Graphics 2000 (SNB GT1)
Avatar du membre
alain
Administrateur du site
Messages : 17314
Enregistré le : dim. 11 oct. 2015 23:41
Localisation : Chelles
Contact :

Re: Afficher évolution de la commande

Message 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:

Code : Tout sélectionner

sudo apt update && sudo apt install 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:

Code : Tout sélectionner

man pv 


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 ;)
Слава Україні _ слава героям махновщини
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: GTX 1080TI-11 Go | OS : LM 22 Xfce 4.18 | K: 6.8
PC2
:Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 22 Wilma Xfce 4.18| K: 6.8
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 12.8 | K: 6.1
In a world without walls and fences, who needs windows and gates?
Avatar du membre
Armaggion
Messages : 685
Enregistré le : jeu. 22 août 2024 16:48

Re: Afficher évolution de la commande

Message 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.
PC : Desktop | Linux Mint 22.1 Xia | Cinnamon 6.4.8 | 6.8.0-63-generic | Intel Core i5-13400F | 32GB | NVIDIA AD106 [GeForce RTX 4060 Ti] / 575.64.03
Avatar du membre
alain
Administrateur du site
Messages : 17314
Enregistré le : dim. 11 oct. 2015 23:41
Localisation : Chelles
Contact :

Re: Afficher évolution de la commande

Message par alain »

Bonjour Armaggion.

Je ne l'ai pas testé, juste vu son existence.
Merci pour l'info ;)
Слава Україні _ слава героям махновщини
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: GTX 1080TI-11 Go | OS : LM 22 Xfce 4.18 | K: 6.8
PC2
:Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 22 Wilma Xfce 4.18| K: 6.8
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 12.8 | K: 6.1
In a world without walls and fences, who needs windows and gates?
Avatar du membre
tioker
modérateur
Messages : 1191
Enregistré le : sam. 6 mai 2017 00:33
Localisation : Anjou...Feu !
Contact :

Re: Afficher évolution de la commande

Message 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

Code : Tout sélectionner

rsync -rvaz --backup --suffix=`date +'.%F_%H-%M'`
ImageDistrib : Linux Mint 22.3 Desktop : X-Cinnamon 6.6.7
Kernel : 6.8.0-110-generic CPU : AMD Ryzen 5 5600H with Radeon Graphics RAM : 14Gi
CG : NVIDIA Corporation TU117M [GeForce GTX 1650 Mobile / Max-Q] (rev a1)
Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] (rev c6)
Genevrier1
Messages : 779
Enregistré le : mer. 15 sept. 2021 20:14
Localisation : Liège/Belgique
Contact :

Re: Afficher évolution de la commande

Message 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...
Mint 22 cinamon 5.6.7
Intel® Core™ i3-2120 CPU @ 3.30GHz × 4
Intel® HD Graphics 2000 (SNB GT1)
Avatar du membre
tioker
modérateur
Messages : 1191
Enregistré le : sam. 6 mai 2017 00:33
Localisation : Anjou...Feu !
Contact :

Re: Afficher évolution de la commande

Message 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 ...

Code : Tout sélectionner

nohup rsync blablabla .... &
¹

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é.
ImageDistrib : Linux Mint 22.3 Desktop : X-Cinnamon 6.6.7
Kernel : 6.8.0-110-generic CPU : AMD Ryzen 5 5600H with Radeon Graphics RAM : 14Gi
CG : NVIDIA Corporation TU117M [GeForce GTX 1650 Mobile / Max-Q] (rev a1)
Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] (rev c6)
Avatar du membre
Armaggion
Messages : 685
Enregistré le : jeu. 22 août 2024 16:48

Re: Afficher évolution de la commande

Message 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.
PC : Desktop | Linux Mint 22.1 Xia | Cinnamon 6.4.8 | 6.8.0-63-generic | Intel Core i5-13400F | 32GB | NVIDIA AD106 [GeForce RTX 4060 Ti] / 575.64.03
Avatar du membre
alain
Administrateur du site
Messages : 17314
Enregistré le : dim. 11 oct. 2015 23:41
Localisation : Chelles
Contact :

Re: Afficher évolution de la commande

Message 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 :mrgreen:
des fois ça va vite, des fois ça ralenti, même des fois on dirait que c'est à l'arrêt...Mais quel suspens! :lol:
C'est toujours mieux qu'un écran noir :l
Слава Україні _ слава героям махновщини
PC1 : CM : ASRock 990FX | CPU: AMD FX 8350-8 cores, 4 GHz | RAM: 16 Go DDR3 1600 MHz | CG: GTX 1080TI-11 Go | OS : LM 22 Xfce 4.18 | K: 6.8
PC2
:Core2 Quad Q9650 @ 3 GHz | CG: Nvidia GTX 650TI | OS: LM 22 Wilma Xfce 4.18| K: 6.8
PC3 :Core i7-2600 @ 3,5 GHz | CG: ATI HD 4650 | OS: Emmade5 Xfce 4.18.0 | K: 6.1
PC4 : AMD Ryzen 5 3500X 4GHz | CG: GTX 970 | Ram : 8GB |OS : Debian 12.8 | K: 6.1
In a world without walls and fences, who needs windows and gates?
Répondre