URL: https://linuxfr.org/forums/linux-general/posts/resolu-creation-image-disque-en-ignorant-l-espace-inutilise Title: [résolu] Création image disque en "ignorant" l'espace inutilisé Authors: flavien75 Date: 2025年06月29日T10:07:32+02:00 License: CC By-SA Tags: ext4 et image Score: 5 Bonjour, Je suis en train de cloner un disque USB de 750 GB (en Ext4), dont environ 40 sont utilisés. Pour l'instant je suis parti sur : ```sh zerofree /dev/sdf1 dd if=/dev/sdf bs=32M | gzip -c> /foo/bar/my_image.dd.gz ``` En continuant comme ça, j'en aurais pour la journée (6 heures à 70 MB / seconde), alors qu'en théorie il y aurait moyen de faire ça en 20 minutes... Est-ce que quelqu'un connaîtrait un utilitaire magique qui remplace à la volée l'espace inutilisé par des zéros ? Ça accélérerait pas mal la création de l'image du disque. Edit suite aux réponses en commentaire : # partclone # Partclone répond au besoin, de 6 heures je suis passé à 15 minutes, par contre le format de sortie est spécifique. ```sh partclone.ext4 -c -d -s /dev/sdf1 -o disque.partclone ``` Comme attendu, le fichier de sortie fait 40.1 GB (soit l'espace utilisé sur le disque) _test refait plus tard, voir plus bas_ # partclone + gzip # En restaurant l'image et en zippant : ```sh partclone.ext4 -c -d -s /dev/sdf1 | partclone.restore -d -s - | gzip -c> disque.img.gz ``` Avantage : on peut restaurer l'image en ayant juste gunzip et dd. Par contre, on passe à un peu plus de 55 minutes, dû probablement à la compression monothread (sur CPU Intel core i5-14400F avec disque NVMe tenant 2.5 GB par seconde en écriture). Pour un disque de 750.2 GB dont 40.1 GB utilisé, on arrive à un fichier de 39.2 GB donc plutôt bien. # partclone + pigz # ```sh partclone.ext4 -c -d -s /dev/sdf1 | partclone.restore -d -s - | pigz -c> disque.img.gz ``` Le fichier de sortie est passé de 39.2 à 39.3 GB, différence qui reste négligeable. Par contre, la durée de clonage est passée à 13 minutes 16 secondes, ce qui est même plus rapide que partclone seul. A éviter en période de canicule (température CPU à 80°C) Une explication possible serait que le test avec partclone seul se faisait en direction d'un disque dur SATA (à plateau) un peu plus lent (175 MB par secondes). # FSArchiver # ```sh fsarchiver -j10 savefs disque.fsa /dev/sdf1 ``` (j10 à adapter en fonction du nombre de cœurs du CPU) Ça fait presque peur, 9 minutes 32 secondes pour cloner le disque (sortie de 38.2 GB). À noter que le CPU a nettement moins chauffé qu'avec pigz (CPU à 48°C). Reste le problème du format de fichier de sortie qui est spécifique à fsarchiver. # partclone (le retour) # Ça m'étonnait un peu que partclone + pigz soit plus rapide que partclone seul, donc j'ai refait le test en dirigeant vers le NVMe. La durée passe à 7 minutes 44 (soit 88 MB/secondes ce qui est plus rapide que le test de performances de gnome...) # Conclusion # Je vais en rester là vu que le problème est résolu, à long terme je pense rester sur la solution partclone + pigz pour garder un format de sortie "standard". Merci à Éric et Cyril pour votre aide. NB: dire qu'au final, ça aura pris 6 heures...