MacBook Pro disque dur illisible en changeant pour un SSD

Alors repasse d'abord une commande :
Bloc de code:
diskutil list

  • et poste le tableau des disques --> que je vérifie les index des disques.
 
Bloc de code:
MBP-de-FLORIAN:~ fbs$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS flo                     999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     FDisk_partition_scheme                        *750.2 GB   disk1
   1:                       0xEE                         750.2 GB   disk1s1
 
La cible est donc le disk1.

Passe la commande initiale (copier-coller) :
Bloc de code:
diskutil eraseDisk free null gpt disk1 ; diskutil list

  • la commande recrée une GPT neuve sur l'en-tête du disque > sans définition d'une partition principale (free = non formatage mais conservation des blocs en espace libre). En conséquence > seule la partition EFI1 (209 Mo) devrait se trouver automatiquement recréée > sur les blocs exacts de la partition précédente.
  • elle réaffiche en second lieu le tableau des disques

Poste l'ensemble de l'affichage retourné.
 
voila le nouveau tableau :
Bloc de code:
Started erase on disk1
Unmounting disk
Creating the partition map
Waiting for partitions to activate
Finished erase on disk1
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS flo                     999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI EFI                     314.6 MB   disk1s1
 
Hé ! hé ! -->
Bloc de code:
/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI EFI                     314.6 MB   disk1s1

  • la nouvelle GPT est bien reconnue comme table directrice ou principale (elle a donc refoulé à une fonction inactive la table alternative PMBR du bloc 0). Mais cette nouvelle table décrit une partition EFI qui a une taille de 314,6 Mo au lieu des 209,7 Mo escomptés.

Passe la commande (copier-coller) :
Bloc de code:
sudo gpt remove -i 1 disk1 ; diskutil list disk1

  • la commande supprime le descripteur de la partition EFI qui n'a pas la bonne taille > puis réaffiche le tableau des partitions du disk1

Poste l'affichage retourné.
 
et voilà le résultat...
Bloc de code:
disk1s1 removed
/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
 
Passe la commande :
Bloc de code:
sudo gpt add -b 40 -s 409600 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B -i 1 disk1 ; diskutil list disk1

  • la commande recrée un descripteur de partition de type EFI sur 209,7 Mo de blocs (si la commande est bien interprétée) > puis affiche le tableau des partitions du disque du DDE

Poste l'affichage retourné.
 
heuuuuu bizarre non ?

Bloc de code:
Password:
disk1s1 added
/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI                         1.7 GB     disk1s1
 
Je crois que j'ai compris. La taille du bloc de référence varie > selon que ton SSD de démarrage est placé en interne (comme ici) ou en externe. Je pense qu'actuellement le bloc vaut 4096 octets > soit un octuple du bloc standard de 512 octets qui servait de référence dans le tableau initial (que j'utilise en paradigme).

Passe la commande :
Bloc de code:
gpt remove -i 1 disk1 ; diskutil list

  • qui re-supprime la partition EFI et réaffiche le tableau des disques.

Poste l'affichage. Il va falloir que je recalcule les tailles.
 
Bloc de code:
MBP-de-FLORIAN:~ fbs$ gpt remove -i 1 disk1 ; diskutil list
gpt remove: unable to open device 'disk1': Permission denied
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS flo                     999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI                         1.7 GB     disk1s1
 
Pardon : il faut sudo en tête de commande. Voici la commande éditée :
Bloc de code:
sudo gpt remove -i 1 disk1 ; diskutil list

  • poste le retour.
 
voilà lui
Bloc de code:
disk1s1 removed
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS flo                     999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
 
Bon ! passe la commande :
Bloc de code:
sudo gpt show disk1

  • et poste le tableau des blocs --> que je voie comment sont dénombrés les blocs de départ du disque.
 
voilà le dénombrement des blocs
Bloc de code:
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2          4         Pri GPT table
          6  183143635        
  183143641          4         Sec GPT table
  183143645          1         Sec GPT header
 
Oui : je vois. Il faut que je recalcule tout. Le changement de référentiel de taille de bloc (selon que le SSD est en interne : bloc = 4096 octets ou en externe : bloc = 512 octets) --> est la raison de tous tes ennuis depuis le départ (et des miens actuellement).

Passe la commande :
Bloc de code:
gpt add -b 6 -s 51200 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B -i 1 disk1 ; diskutil list disk1

  • la commande crée un descripteur de partition de type EFI > dont le bloc de départ & la taille en blocs sont ajustés à la nouvelle taille du bloc de 4096 octets ; puis réaffiche le tableau des disques.

Poste l'affichage retourné.
 
avec un sudo avant ?

voilà avec le sudo
Bloc de code:
MBP-de-FLORIAN:~ fbs$ sudo gpt add -b 6 -s 51200 -t C12A7328-F81F-11D2-BA4B-00A0C93EC93B -i 1 disk1 ; diskutil list disk1
Password:
disk1s1 added
/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1

et vu le résultat t'es un crack Macomaniac ;)
 
Dernière édition par un modérateur:
Sauvés ! J'm'suis pas gourré dans mes comptes. Voici la partition -->
Bloc de code:
   1:                        EFI EFI                     209.7 MB   disk1s1

  • tu remarques la taille de 209,7 Mo et l'indication de volume EFI. Ce qui veut dire que le bloc 0 de cette partition est bien le super-bloc du système de fichiers FAT-32 (de rigueur dans cette partition) càd. son bloc d'ancrage. Qui correspond au bloc n°6 dans le comput avec des unités de bloc de 4096 octets. Pfuiii ! le bazar...

Passe la commande :
Bloc de code:
sudo gpt show disk1

  • et poste le tableau --> que je voie l'alignement des blocs actuels...
 
voilà

Bloc de code:
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2          4         Pri GPT table
          6      51200      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
      51206  183092435        
  183143641          4         Sec GPT table
  183143645          1         Sec GPT header
 
Allez : banzaï ! --> passe la commande :
Bloc de code:
sudo gpt add -b 51206 -s 182933744 -t 53746F72-6167-11AA-AA11-00306543ECAC -i 2 disk1

  • la commande assume que le 1er bloc libre = le n° 51206 dans le nouveau comput de blocs de 4096 octets > est bien le super-bloc du dispositif CoreStorage de la partition principale. Et qu'il doit être pris en bloc 0 par le descripteur de la nouvelle partition. Qu'une extension de 182933744 blocs de 4096 octets correspond bien à l'extension mesurée antérieurement en blocs de 512 octets. Avec donc un type de partition "Apple_CoreStorage" désigné par son UUID universel de type = 53746F72-6167-11AA-AA11-00306543ECAC > et un rang n°2

Poste l'affichage retourné.
 
voilà les 2 actions

Bloc de code:
MBP-de-FLORIAN:~ fbs$ sudo gpt add -b 51206 -s 182933744 -t 53746F72-6167-11AA-AA11-00306543ECAC -i 2 disk1
Password:
disk1s2 added
MBP-de-FLORIAN:~ fbs$ diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                  Apple_HFS flo                     999.3 GB   disk0s2
   3:                 Apple_Boot Recovery HD             650.0 MB   disk0s3

/dev/disk1 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *750.2 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:          Apple_CoreStorage                         749.3 GB   disk1s2