Fiche mémo ghost sous Linux
Cette fiche-mémo est destinée aux utilisateurs avancés comme aide-mémoire pour ghoster des partitions sous Linux en ligne de commande (que ce soit des partitions Windows, Linux ou autres).
Usage typique: à partir d'un LiveCD.
Introduction
Dans les exemples suivants:
- /dev/sda est le disque dur contenant les partitions à ghoster
- /dev/sda1 est la partition Linux
- /dev/sda2 est la partition Windows (ntfs)
Les commandes sont à exécuter en root.
Logiciels à utiliser pour ghoster
Mémo des logiciels à utiliser en fonction des types de partitions.
ext2 ext3 ext4 fat ntfs autres dd * * * * * * partclone * * * * * *(1) partimage * * * *(2) ntfsclone *
(1) ext2/ext2/ext4/reiserfs/reiser4/xfs/fat/ntfs/hfsplus/ufs2/vmfs
(2) ext2/ext3/reiserfs/fat/hpfs/jfs/xfs. ext4 n'est pas supporté. Non recommandé pour ntfs (experimental), utilisez plutôt partclone ou ntfsclone.
Pour lister les partitions, utilisez fdisk -l, sfdisk -l ou gparted.
dd et ntfsclone sont fournis en standard sur le LiveCD Ubuntu. partimage est dans les dépôts officiel Ubuntu. partclone est à télécharger (.deb) sur sourceforge: https://sourceforge.net/projects/partclone/files/ (Site officiel: https://partclone.org/ )
Notes
- dd sauvegarde tout. partclone,partimage,ntfsclone ne sauvegardent que les secteurs occupés.
- Les partitions sauvegardées par dd sont montables pour en lire le contenu. Pas les autres.
- La solution recommandée est partclone+gzip (rapide, prend moins de place, supporte tous les systèmes de fichiers). (Exemple: Partition 10 Go ext4 occupée à 4,1 Go. Backup: 1,7 Go. Temps de restauration: 7 min. 15).
- Pour dd, avant de cloner, videz les secteurs libres (à faire dans la partition à sauvegarder, montée):
-
dd if=/dev/zero of=fichier_zero
-
sync
-
rm fichier_zero
-
MBR
Sauvegarde du MBR (logiciel amorce+table de partition):
dd if=/dev/sda of=mbr.bin bs=512 count=1
Restauration:
dd if=mbr.bin of=/dev/sda
Sauvegarde du logiciel amorce (sans la table de partition):
dd if=/dev/sda of=amorce.bin bs=446 count=1
Restauration:
dd if=amorce.bin of=/dev/sda
Sauvegarde de la table de partition (sans le logiciel amorce):
sfdisk -d /dev/sda > sda.sfdisk
Restauration:
sfdisk --force /dev/sda < sda.sfdisk
Partitions
dd
Systèmes de fichiers supportés: Tous.
Ghost d'une partition avec dd:
dd if=/dev/sda1 of=backup.dd
Restauration:
dd if=backup.dd of=/dev/sda1
Ghost d'une partition avec dd (compression rapide):
dd if=/dev/sda1 | gzip -c > backup.dd.gz
Restauration:
zcat backup.dd.gz | dd of=/dev/sda1
Ghost d'une partition avec dd (compression forte):
dd if=/dev/sda1 | lzma > backup.dd.lzma
Restauration:
lzma -d -c backup.dd.lzma | dd of=/dev/sda1
partclone
Systèmes de fichiers supportés: ext2/ext2/ext4/reiserfs/reiser4/xfs/fat/ntfs/hfsplus/ufs2/vmfs
Attention: Utiliser les partclones appropriés en fonction du système de fichiers: Taper partclone.[TAB] pour voir la liste des partclone disponibles: partclone.extfs pour ext2/3/4, partclone.fat, partclone.ntfs...
Ghost d'une partition avec partclone:
partclone.extfs -c -s /dev/sda1 -o backup.partclone.ext4
Restaurer une partition:
partclone.restore -s backup.partclone.ext4 -o /dev/sda1
Ghost d'une partition avec partclone + compression (Recommandé):
partclone.extfs -c -s /dev/sda1 | gzip -c > backup.partclone.ext4.gz
Restauration:
zcat backup.partclone.ext4.gz | partclone.restore -o /dev/sda1
partimage
Systèmes de fichiers supportés: ext2/ext3/reiserfs/fat/hpfs/jfs/xfs
Ghost d'une partition avec partimage:
partimage save /dev/sda1 backup.partimage
Restauration:
partimage restore /dev/sda1 backup.partimage
ntfsclone
Systèmes de fichiers supportés: ntfs
ntfsclone /dev/sda2 --save-image --output backup.ntfsclone
Restauration:
ntfsclone --restore-image backup.ntfsclone --overwrite /dev/sda2
Sauvegarde par réseau
ssh
En supposant qu'un serveur ssh est disponible sur chaque machine:
Sauvegardes par réseau (ssh) (à taper sur la machine à backuper):
dd if=/dev/sda1 | gzip -c | ssh -c blowfish user@serveur "dd of=backup.dd.gz"
Restauration (à taper sur la machine serveur contenant le backup):
dd if=backup.dd.gz | ssh -c blowfish root@machinemorte "gzip -d -c | dd of=/dev/sda1"
(Il faudra installer un serveur ssh sur les machines ; c'est possible en LiveCD avec Ubuntu
soit en faisant un sudo apt-get install openssh-server soit en embarquant juste le .deb sur clé USB.)