Récupération de disques VIII : Récupérer un disque basiques gpt

Maintenant que nous avons vu les structures qui décrivent les partitions des disques basiques GPT, voyons où nous pouvons rencontrer une corruption et comment la réparer (ou pas)

Si nous reprenons notre schéma, une corruption pourrait arriver :

  • Dans le MBR
  • Dans le GPT Header
  • Dans la table de partition (qui occupe les secteurs 2 à 33)
  • Dans les NTFS Boot Sectors
  • Dans la MFT (utiliser chkdsk)

La structure GPT est très robuste en ceci que windows maintient une consistance entre les GPT Header de début et de fin, ainsi que dans les tables de partitions de début et de fin, de façon à ce que si quelqu’un vient à supprimer l’un d’eux, il sera réparé au moins au prochain reboot.

La partie non protégée est le MBR (secteur 0) et c’est jusqu’à présent la seule corruption que j’ai eu à réparer sur des disques GPT Basiques.

clip_image002

Nous n’allons donc voir que deux types de corruption

  • MBR
  • Partition Table
  • NTFS : Déjà couvert dans les parties précédentes.

Premier type de corruption (le seul déjà rencontré au support) : Vidage du MBR

Voilà à quoi cela ressemble dans le gestionnaire de disque :

clip_image004

A l’éditeur hexa, on ne voit que des 00:

clip_image006

Le secteur 1 contient bien ce qui ressemble à un GPT Header

clip_image008

Ses données semblent correctes

Signature : EFI PART

Revision: 1.0

Header Size : 92

Header CRC: 2038912732

Reserved1 : 0

This LBA : 1

Alternate LBA : 266338303

First Usable LBA: 34

Last Usable LBA : 266338270

Partition Entry LBA: 2

Partition Count : 128

Partition Entry Size : 128

Partition Array CRC : 1909465771

Disk GUID : 51063D81-877B-4536-B69E-0958EDB891C2

Si on ouvre le GPT Header alternative, on retrouve les mêmes données :

Si on parcours la table de partition (LBA 2) on trouve une table de partition contenant la MSR et 3 partitions de données. Dans mon cas, je n’ai que 3 partitions sur mon disque donc, les autres LBAs (jusqu’au 33) sont vides.

clip_image010

On peut reporter les données dans ce tableau (pour l’interprétation, se référer au chapitre précédent)

 

Partition 1

Partition 2

Partition 3

Partition 4

Partition Type

E3C9E326-0B5C-4DB8-817D-F92DF00215AE

EBD0A0A2-B9E5-4433-47C0-68B6B72699C7

EBD0A0A2-B9E5-4433-47C0-68B6B72699C7

EBD0A0A2-B9E5-4433-47C0-68B6B72699C7

Partition GUID

18516D6A-C900-4A25-888C-E27974E44EAA

0DC137A4-CEFF-48ED-8EF8-E08282AA555B

32781219-85A3-470B-A075-DBD480A9D685

3D0A2A5F-8F8A-43B6-B859-8EA9930DCBE6

Starting LBA

34

264192

184416256

245854208

Attribute Flags

0

0

0

0

Ending LBA

262177

184416255

245854207

266334207

Partition Name

Microsoft reserved partition

Basic data partition

Basic data partition

Basic data partition

Dans le cadre d’une réparation, il faut bien vérifier que les secteurs 264192/184416255 , 184416256/245854207 et 245854208/266334207 sont des secteurs NTFS et contrôler qu’ils pointent bien vers une MFT a priori correcte. (nous avons traité ces points dans les articles précédents)

Donc:

  • Les "GPT Header" principal et secondaire sont Ok
  • Les "GPT Entries" des "Partition Table" principale et secondaire sont Ok
  • Les structures NTFS sont Ok

Seul le MBR est à reconstruire

Il ne nous reste plus qu’à réparer le MBR en se souvenant qu’ils sont tous identiques.

Partition table entry

 

Start head : 0

End head : FF (255)

Start sector : 2

End Sector : 3F (63)

Start Cylinder : 0

End Cylinder : 3FF (1023)

Relative Sector : 1

Total Sectors : FFFFFFFF (4294967295)

Partition Type : EE (GPT)

Magic number : 55 AA

En utilisant un éditeur hexa il reste à écrire ces données :

clip_image012

Et c’est tout. Un rescan du disque et on n’en parle plus.

Serge Gourraud
55 AA