Je souhaite effectuer une sauvegarde de l'ensemble de la structure de partition d'un disque dur, y compris les lecteurs logiques, afin de pouvoir restaurer cette structure sur un autre disque. Je ne pas veux copier le contenu des partitions, seule la mise en page. Pour les partitions principales et étendues, c'est simple:
dd if=/dev/sda of=partitiontable.bin bs=1 skip=446 count=64 # backup
dd if=partitiontable.bin of=/dev/sda bs=1 seek=446 count=64 # restore
Mais s’agissant de la disposition des partitions logiques, je me demande s’il existe une méthode similaire de sauvegarde de la disposition parmi les outils standard. Je suppose que le principal problème est de trouver les décalages par rapport aux emplacements des EBR, car cela dd
fera le reste. Gardez à l'esprit que je dois pouvoir tout remettre sur un disque (éventuellement) vierge et ainsi restaurer la même présentation. Utiliser des outils de partitionnement comme fdisk
ou parted
c'est bien, mais je dois être capable d'automatiser leur utilisation (script) et ils ne devraient pas dépendre de packages liés à X - en ligne de commande uniquement.
Mon plan de sauvegarde le fait manuellement dans un petit script python en utilisant le module struct, mais j'espérais plutôt qu'il y aurait un moyen plus facile.
la source
sfdisk
ne fonctionne pas avec de gros volumes ou supporte GPT.sfdisk -L /dev/sda < part_table
Cela dépend si votre disque source utilise un MBR (aka "dos" ou "msdos") ou une table de partition GPT (aka "GUID").
Les disques de plus de 2 To ne peuvent pas utiliser MBR, ils sont donc GPT.
Les disques de moins de 2 To peuvent utiliser les deux, vous devez donc d'abord savoir qui c'est.
En supposant que vous soyez sur Linux, utilisez l'une de ces commandes pour déterminer la table de partition utilisée par votre disque source:
Donné
Pour les disques MBR
utiliser
sfdisk
comme suggéré par la réponse de Petr Uzel, ou cette variante:Pour les disques GPT
La bonne réponse a été donnée ici et ici par Kris Harper .
Vous avez besoin de fdisk GPT . Regardez la page de téléchargement ou exécutez
sudo apt-get install gdisk
.Ensuite, utilisez la commande sgdisk :
La dernière commande randomise le GUID sur le disque et toutes les partitions. Cela n'est nécessaire que si les disques doivent être utilisés sur le même ordinateur, sinon c'est inutile.
la source
--backup=File
d'exporter une table de partition à partir du disque source et--load-backup=File
de le restaurer sur le disque de destination.Liaisons pyparted et python-lvm plus anciennes mais toujours intéressantes .
Mise à jour:
La précédente a été publiée parce que ce qui précède ne fonctionne pas dans de nombreuses situations modernes, selon la page de manuel sfdisk.
Cette commande prend toutefois en charge> 2 To de partitions et LVM.
Exemple de sortie:
la source
sda.parted
fichier enregistré sur un nouveau disque?