Ma situation semble très similaire à la façon de réparer le disque dur GUID corrompu en MBR mais avec suffisamment de différences que je n'ai pas été en mesure de mettre en place une solution sûre.
J'ai un disque Toshiba de 3 To dans un boîtier USB utilisé sur un Mac avec OS X El Capitain 10.11.3.
Le lecteur a été configuré avec une seule partition. Le lecteur n'était pas amorçable et n'avait pas de système installé, donc je suppose qu'il n'aurait pas non plus de partition de récupération. Je ne peux pas dire avec certitude qu'aucun système n'a jamais été installé, mais je ne le pense pas. Il n'a pas été utilisé avec Bootcamp ou sur un ordinateur non Mac.
Le lecteur a fonctionné normalement pendant une longue période, mais n'a pas été reconnu récemment. En enquêtant avec l'utilitaire de disque, il apparaît comme ayant un type de partition FDisk_partition_scheme . Je suis sûr que c'était à l'origine la valeur par défaut typique de la carte de partition GUID au format OS X Extended (journalisé) .
Je ne peux penser à aucune utilisation ou événement spécifique qui aurait pu provoquer le changement.
Voici les informations que j'ai recueillies sur le disque.
liste diskutil / dev / disk6
/dev/disk6 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *3.0 TB disk6
1: 0xEE 375.1 GB disk6s1
diskutil info / dev / disk6
Device Identifier: disk6
Device Node: /dev/disk6
Whole: Yes
Part of Whole: disk6
Device / Media Name: DT01ABA300
Volume Name: Not applicable (no file system)
Mounted: Not applicable (no file system)
File System: None
Content (IOContent): FDisk_partition_scheme
OS Can Be Installed: No
Media Type: Generic
Protocol: USB
SMART Status: Not Supported
Total Size: 3.0 TB (3000592982016 Bytes) (exactly 5860533168 512-Byte-Units)
Volume Free Space: Not applicable (no file system)
Device Block Size: 512 Bytes
Read-Only Media: No
Read-Only Volume: Not applicable (no file system)
Device Location: External
Removable Media: No
Virtual: No
OS 9 Drivers: No
Low Level Format: Not supported
fdisk / dev / disk6
Disk: /dev/disk6 geometry: 97451/255/63 [1565565872 sectors]
Signature: 0xAA55
Starting Ending
#: id cyl hd sec - cyl hd sec [ start - size]
------------------------------------------------------------------------
1: EE 1023 254 63 - 1023 254 63 [ 1 - 732566645] <Unknown ID>
2: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
3: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused
gpt récupérer / dev / disk6
gpt recover: /dev/disk6: no primary or secondary GPT headers, can't recover
gpt -r -vv show / dev / disk6
gpt show: /dev/disk6: mediasize=3000592982016; sectorsize=512; blocks=5860533168
gpt show: /dev/disk6: PMBR at sector 0
start size index contents
0 1 PMBR
1 5860533167
gdisk / dev / disk6
GPT fdisk (gdisk) version 1.0.1
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries.
Voici une capture d'écran de la première partie du lecteur dans wxHexEditor. L'EFI PART commence à 4096.
J'ai commencé à chercher la chaîne HFSJ à partir d'un décalage de 409642, comme suggéré dans d'autres réponses, mais je ne l'ai pas trouvée près de là. J'ai donc recherché à partir du début du lecteur et trouvé la première occurrence au décalage 314598400.
Cependant, si je continue à rechercher des occurrences de HFSJ, j'en trouve beaucoup qui se ressemblent exactement et avec beaucoup d'espace nul autour d'eux, comme le premier. Ceux-ci commencent à 360424448 et sont espacés de 32768. Par exemple, aux décalages 360424448 360457216 360489984 360522752 360555520
J'ai utilisé la recherche Find All dans wxHexEditor et je me suis arrêté après quelques minutes. Il en avait trouvé quelques milliers à ce moment-là. Je ne sais pas quoi faire de ceux-ci, le cas échéant.
J'ai également pu trouver une section intitulée Partition système EFI à l'offset 3000592961536. Cela montre également le nom du lecteur, "Rosie".
Voici des captures d'écran de la première partition HFSJ et de la partition système EFI. Ajout d'une capture d'écran du décalage 8192 en fonction des commentaires.
Merci pour toute aide.
la source
0+0 records in
0+0 records out
0 bytes transferred in 0.000013 secs (0 bytes/sec)
Réponses:
S'il vous plaît essayez ce qui suit:
Obtenez l'identifiant de disque de votre lecteur externe de 3 To
Ci-dessous, je suppose que l'identifiant du disque est disk6
démonter le disque:
Remplacez les 40 premiers blocs:
Créez un nouveau gpt:
Vérifiez les informations du disque avec:
Assurez-vous que la taille du bloc de périphérique est toujours de 512 octets
Vous pouvez également utiliser
Si le gpt montre:
vous disposez d'un disque et d'un contrôleur de disque qui indiquent une taille de bloc logique de 512 octets. Veuillez passer à l'étape suivante.
Si le gpt montre:
vous disposez d'un disque et d'un contrôleur de disque qui indiquent une taille de bloc logique de 4096 octets. Veuillez vous arrêter ici et ajouter un commentaire.
Reconstruisez d'abord l'entrée EFI avec:
En fonction de la taille du disque et de la version du système, des volumes EFI de tailles différentes sont construits s'ils sont partitionnés avec l'Utilitaire de disque: l'un avec la taille 200 Mio ou l' autre avec 300 Mio. Ici, il est évident que votre disque contient un EFI de 300 Mo et probablement 4096 octets d'espace disque non alloué: (314598400-1024) / 512 = 614448 (= volume principal du bloc de démarrage) 614448-40-8 = 614400 (= taille de l'EFI)
Reconstruisez votre volume principal avec:
La taille du volume principal peut être déterminée par la première entrée (corrompue et ancienne) de la deuxième table GPT: (3000592961536/512) = 5860533128 est son numéro de bloc. Ensuite, la taille est calculée par 5860533128-614448 = 5859918680 blocs. Étant donné que 5859918680 est divisible par 8 (taille de bloc physique 4096 / taille de bloc logique 512), c'est une bonne estimation de la taille du volume.
La meilleure supposition est enfin:
La deuxième meilleure supposition est:
Votre volume perdu est probablement monté maintenant. Vérifiez le volume avec:
Si nécessaire, essayez de réparer le volume.
Depuis que vous avez déplacé le disque «corrompu» vers un autre boîtier et contrôleur de disque, la taille du bloc logique a été modifiée. L'ancienne carte de partition est probablement basée sur une taille de bloc logique de 4096 octets.
Pour récupérer la carte de partition dans l'ancien cas (4096b), vous auriez dû entrer ce qui suit pour restaurer le GPT (basé sur la réponse de David Anderson):
Créez un nouveau gpt:
Reconstruisez d'abord l'entrée EFI avec:
Reconstruisez votre volume principal avec:
la carte de partition finale ressemble à ceci:
Sur la base de la partie 4096b, cette "retraduit" après l'installation du disque dans un cas de taille de bloc logique 512b pour:
Créez un nouveau gpt:
Reconstruisez d'abord l'entrée EFI avec:
Reconstruisez votre volume principal avec:
Cela diffère de la première partie (acceptée) de ma réponse, mais c'est la bonne! Étant donné que l'EFI est réellement "vide" et que les blocs 262144 non alloués contiennent uniquement des zéros, la réponse "première et en quelque sorte erronée" n'affecte pas l'opérabilité du volume.
la source
Ce n'est pas une réponse, mais plutôt un exemple de la façon d'extraire les informations de partition GPT des données que vous avez présentées. Les entrées de partition GPT secondaires (de sauvegarde) ont été utilisées car vous n'avez pas publié le contenu des entrées de partition GPT principales. Le document " GUID Partition Table " a été utilisé pour interpréter les données.
Le dernier LBA utilisable se trouve dans l'en-tête GPT. Cela se produit à l'adresse 8244. La valeur est
Le début des entrées GPT secondaires (de sauvegarde) commence au bloc suivant. La valeur est
En utilisant cela comme début de l'entrée de la table de partition EFI, j'obtiens les valeurs suivantes. Le début de la partition EFI, trouvée à l'adresse 3000592961568, est
La fin de la partition EFI, trouvée à l'adresse 3000592961576, est
Ce qui donne une taille de partition de
Le début de la partition HFS, trouvée à l'adresse 3000592961696, est
La fin de la partition HFS, trouvée à l'adresse 3000592961704, est
Ce qui donne une taille de partition de
Si vous prévoyez d'utiliser une taille de bloc de 512 octets, les résultats ci-dessus devront être multipliés par une valeur de 8 pour être convertis en 512 octets / bloc.
la source