Monter une image Clonezilla
Dans le cadre d'une réinstallation complète de mon système ubuntu (le partitionnement ne me plaisait pas) j'ai utilisé le logiciel Clonezilla permettant de réaliser une image complète d'un disque, au même titre que les logiciels plus connus mais propriétaires : Acronis True Image© ou Norton Ghost©.
Après avoir réalisé une image de mon système sur un disque externe, j'ai souhaité réaliser une nouvelle installation d'ubuntu. En utilisant la sauvegarde réalisée par Clonezilla, il est possible d'y piocher seulement les fichiers que je souhaitais récupérer sans être obligé de restaurer complètement la partition associée.
description de la sauvegarde
Pour commencer, il est nécessaire d'identifier le fichier correspondant à la partition recherchée. Lors de la sauvegarde du disque, Clonezilla a créé un répertoire complet avec les détails qui sont nécessaires à la restauration.
Comme on peut le voir ci-dessous, un grand nombre de fichiers sont créés dans le répertoire de sauvegarde :
jeremie@homer:/media/jeremie/Backup/2017-11-03-20-img
total 30971462
drwxrwxrwx 1 jeremie jeremie 4096 nov. 3 22:11 ./
drwxrwxrwx 1 jeremie jeremie 4096 nov. 9 14:04 ../
-rwxrwxrwx 1 jeremie jeremie 2117 nov. 3 21:56 blkdev.list*
-rwxrwxrwx 1 jeremie jeremie 1700 nov. 3 21:56 blkid.list*
-rwxrwxrwx 1 jeremie jeremie 6334 nov. 3 22:11 clonezilla-img*
-rwxrwxrwx 1 jeremie jeremie 174 nov. 3 22:03 dev-fs.list*
-rwxrwxrwx 1 jeremie jeremie 4 nov. 3 22:03 disk*
-rwxrwxrwx 1 jeremie jeremie 24047 nov. 3 22:03 Info-dmi.txt*
-rwxrwxrwx 1 jeremie jeremie 187 nov. 3 22:11 Info-img-id.txt*
-rwxrwxrwx 1 jeremie jeremie 33459 nov. 3 22:03 Info-lshw.txt*
-rwxrwxrwx 1 jeremie jeremie 2372 nov. 3 22:03 Info-lspci.txt*
-rwxrwxrwx 1 jeremie jeremie 243 nov. 3 22:03 Info-packages.txt*
-rwxrwxrwx 1 jeremie jeremie 97 nov. 3 22:11 Info-saved-by-cmd.txt*
-rwxrwxrwx 1 jeremie jeremie 10 nov. 3 22:03 parts*
-rwxrwxrwx 1 jeremie jeremie 5845167082 nov. 3 21:58 sdd1.ext4-ptcl-img.gz.aa*
-rwxrwxrwx 1 jeremie jeremie 25868462745 nov. 3 22:03 sdd2.ext4-ptcl-img.gz.aa*
-rwxrwxrwx 1 jeremie jeremie 37 nov. 3 21:56 sdd-chs.sf*
-rwxrwxrwx 1 jeremie jeremie 1048064 nov. 3 21:56 sdd-hidden-data-after-mbr*
-rwxrwxrwx 1 jeremie jeremie 512 nov. 3 21:56 sdd-mbr*
-rwxrwxrwx 1 jeremie jeremie 415 nov. 3 21:56 sdd-pt.parted*
-rwxrwxrwx 1 jeremie jeremie 362 nov. 3 21:56 sdd-pt.parted.compact*
-rwxrwxrwx 1 jeremie jeremie 251 nov. 3 21:56 sdd-pt.sf*
-rwxrwxrwx 1 jeremie jeremie 57 nov. 3 22:03 swappt-sdd3.info*
Les sauvegardes sont clairement identifiables par leur taille, ici sdd1.ext4-ptcl-img.gz.aa et sdd2.ext4-ptcl-img.gz.aa
Le fichier dev-fs.list
décrit les partitions présentes sur le disque sauvegardé, dans cet exemple, il contient 3 lignes :
# <Device name> <File system>
# File system is got from ocs-get-part-info. It might be different from that of blkid or parted.
/dev/sdd1 ext4
/dev/sdd2 ext4
/dev/sdd3 swap
Si vraiment ces informations ne suffisent pas, vous pouvez identifier ces anciens points de montage avec le disque correspondant et la taille de la partition du disque sauvegardé.
cat blkdev.list
affiche alors
KNAME NAME SIZE TYPE FSTYPE MOUNTPOINT MODEL
loop0 loop0 225.6M loop squashfs /lib/live/mount/rootfs/filesystem.squashfs
sda sda 1.8T disk TOSHIBA HDWD120
sda1 |-sda1 1.8T part zfs_member
sda9 \`-sda9 8M part
sdb sdb 1.8T disk TOSHIBA HDWD120
sdb1 |-sdb1 1.8T part zfs_member
sdb9 \`-sdb9 8M part
sdc sdc 1.8T disk TOSHIBA HDWD120
sdc1 |-sdc1 1.8T part zfs_member
sdc9 \`-sdc9 8M part
sdd sdd 119.2G disk Samsung SSD 840
sdd1 |-sdd1 28G part ext4
sdd2 |-sdd2 89.5G part ext4
sdd3 \`-sdd3 1.9G part swap
Ici, les partitions qui nous intéressent sont sdd1 et sdd2 sur le disque Samsung SSD 840.
J'identifie alors mon ancienne partition /home sur sdd2.
montage d'une image
Lors de la sauvegarde, j'ai utilisé l'utilitaire partclone avec une compression gzip (choix par défaut dans Clonezilla). Pour restaurer mon image, il suffit de deux étapes
- créer le fichier destination pour initialiser le fichier image, sinon partclone échoue lors de la restauration
- une succession de commande de cat, gzip et parclone. Attention, assurez vous d'avoir suffisamment d'espace sur le disque de destination pour créer l'image qui sera ensuite utilisable (*.img)
par exemple, sur mon cas précis :
touch /chemin/vers/la/future/image/sdd2.img
cat /chemin/source/2017-11-03-20-img/sdd2.ext4-ptcl-img.gz.aa | gzip -d -c | partclone.restore -C -s - -O /chemin/vers/la/future/image/sdd2.img
Après un certain temps, la console affiche
Partclone v0.3.6 http://partclone.org
Démarrage restauration image (-) vers périphérique (sdd2.ext4.img)
Calculating bitmap... Please wait...
done!
Système de fichiers: EXTFS
Device size: 96,0 GB = 23446272 Blocks
Space in use: 37,5 GB = 9155639 Blocks
Free Space: 58,5 GB = 14290633 Blocks
Taille de bloc: 4096 octets
Elapsed: 00:05:34, Remaining: 00:00:00, Completed: 100.00%, Débit: 6,74GB/mn,
current block: 23402199, total block: 23446272, Complete: 100.00%
Durée totale: 00:05:34, Débit moyen: 6,7GB/mn, 100.00% completed!
Syncing... OK!
Partclone a réussi à restaurer l'image (-) vers le périphérique (sdd2.img)
Cloned successfully.
L'exécution se réalise sans problème, et voilà, j'ai désormais un fichier que je peux monter simplement dans ubuntu ! :)
Dans les dernières versions d'ubuntu, il est néanmoins nécessaire de réaliser un clic droit sur le fichier sdd2.img et choisir "Ouvrir avec une autre application". Par défaut, ubuntu propose l'Enregistreur d'images disque, mais je souhaite simplement monter l'archive pour la lire. Pour cela, il faut choisir l'application Monteur d'images disque.
Au cas où le montage de l'archive sdd2.img ne fonctionne pas, il est peut-être nécessaire d'effectuer une phase de réparation du fichier.
Un des messages possible est mount: /mnt/sdd2: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.
Dans ce cas, exécuter la commande suivante pour redimensionner correctement le système de fichier au sein de l'archive :
resize2fs sdd2.ext4.img
et si cela ne fonctionne toujours pas, effectuer une réparation du système de fichier par la commande e2fsck -f -b 32768 sdd2.img
Voilà, vous devriez pouvoir naviguer dans l'archive, et la monter au besoin pour y revenir quand vous le souhaitez :-)