10.13 High Sierra Problème de Fusion Drive, Disque endommagé ou HS

Random_error

Membre confirmé
12 Août 2020
90
7
21
Bonjour, voilà maintenant 2 jours que j'enquête sur mon problème de disque qui m'empêche de le démarré correctement.
J'ai un macBookPro mis-2010 avec High Sierra dessus, une configuration en fusion drive et un dual boot Mac/Linux.



Note de la modération: pas trop de rapport avec les portables Mac, je déplace dans le forum adéquat.




IMG_3216.jpg

Tout a commencé lorsque j'ai démarré mon MacBook Pro en laissant une carte SD au démarrage, un logo d'interdiction le barrait toujours au démarrage.
J'ai mis un certain temps à le démarrer en mode recovery, faute d'une bonne connexion, par la suite je bootais mon ordinateur sur une clé avec une version légère du système. Tout d'abord, j'ai voulu réinstaller l'OS, mais il m'affichait aucun disque à sélectionné, c'est à ce moment là que j'ai compris que le problème était plus grave que je le pensais.

J'ai vérifié et J'ai essayé de réparer mes disques avec la commande : diskutil... mais j'ai abouti à rien sauf des erreurs, je vous met ci-joint des captures d'écran sur les erreurs. Elles m'ont orienté vers un problème au niveau du fusion drive, j'ai donc suivi la procédure pour le réparer mais la aussi j'ai abouti à des erreurs.

Je vous passe tout les détails des autres manipulation qui n'ont pas aboutis ou qui ne corresponde pas à notre problème.

IMG_3223.jpg IMG_3221.jpg

IMG_3224.jpg

Pour récapituler, je n'ai aucun problème au niveau de l'apple Boot, des sytème EFI sur les deux disques (disk1,disk2). J'ai une erreur sur la mise en place du volume physique : "Corestorage fusion " sur le disque 1 et deux même erreur qui concerne des partitions de stockage dont l'OS de Linux sur le disque deux : "unrecognized file system" erreur -69846 qui se traduit par une inaccessibilité des données sur les partitions.

Ma conclusion, bien que je connaisse mal cette partie-là de macOS est que le disque HDD est HS se qui explique l'absence de propriété sur le disque en question(voir capture d'écran). Est-il possible de réparer mon disque ou dans le cas échéant récupérer ses données ?

IMG_3226.jpg
 
Dernière édition par un modérateur:
Bonjour Ramdom_error

La partition disk1s2 du disque de 250 Go > au lieu de porter la mention du type de partition : "Apple_CoreStorage" > porte la mention :
Bloc de code:
FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF

  • il s'agit d'un faux type de partition > qui signale que le descripteur de cette partition dans la table GPT de l'en-tête de ce disque spécique est corrompu au niveau de sa désignation du type de la partition.
  • la solution à ce problème que j'ai déjà eu l'occasion de traiter une série de fois opère en 2 temps : a) supprimer le descripteur GPT de cette partition (ce qui édite la table GPT sans toucher le moindre bloc de la partition elle-même) => b) recréer le descripteur de manière valide dans cette même table GPT.

Pour cette opération > il faut savoir quelle est la distribution exacte des blocs du disque. Passe la commande :
Bloc de code:
gpt show disk1

  • qui affiche la distribution des blocs du disque de 250 Go tels que gérés par la table GPT en : secteur de boot des tables de partitions > partitions > bandes d'espace libre.

Voici comment tu vas pouvoir poster ici ce tableau sans avoir besoin de prendre de photo -->

  • tu sélectionnes le tableau > ⌘C pour le copier dans le presse-papier > ⌘Q pour quitter le «Terminal» > option  : "Obtenir de l'aide en ligne" (dans la fenêtre des 4 Utilitaires) > ce qui lance un navigateur «Safari»
  • page Apple par défaut > un clic sur l'adresse de haut de page pour l'éditer > saisis  : macgénération (tout court  : c'est une barre de recherche Google) et valide > tu atteins le site MacGé > Forums > te connectes > ce fil
  • en bas de cette page des forums MacGé => utilise le menu ...▾ (à droite du smiley souriant) dans la barre de menus au-dessus du champ de saisie d'un message > sous-menu : </> Bloc de code => tu fais ton coller dans la fenêtre de code et Continuer.

Note 1 : si tu ne peux pas poster via le Safari de la session de secours (ça arrive) --> poste une photo du tableau comme tu l'as déjà fait.

Note 2 : dans la session de secours > les applications se lancent en mode "alternatif" et pas parallèle. Il faut quitter le Terminal pour lancer Safari. Vice-versa > quitter Safari pour récupérer l'écran général de la session de secours et pouvoir relancer le Terminal. Aucun redémarrage n'est requis.
 
Merci pour ta réponse concise et claire ! Comment tu connais tout ça ? Ça m'intéresserai beaucoup !
Le temps de démarrer mon mac et je t'envoie la réponse. Comment une carte SD peut corrompre des disques comme cela ?

Bloc de code:
      start       size  index  contents
          0          1         PMBR
          1          1         Pri GPT header
          2         32         Pri GPT table
         34          6         
         40     409600      1  GPT part - C12A7328-F81F-11D2-BA4B-00A0C93EC93B
     409640  330386816      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
  330796456    1269536      3  GPT part - 48465300-0000-11AA-AA11-00306543ECAC
  332065992        824         
  332066816  148473856      4  GPT part - 0FC63DAF-8483-4772-8E79-3D69D8477DE4
  480540672    7856128      5  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  488396800        335         
  488397135         32         Sec GPT table
  488397167          1         Sec GPT header
 
  • J’aime
Réactions: peyret et litobar71
Parfait. Voici le descripteur de la partition qui nous intéresse -->
Bloc de code:
     409640  330386816      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF

  • ce descripteur décrit logiquement une partition du disque (aucune partition n'existant physiquement sur un disque) > dont le bloc de tête = n°409640 (1er bloc libre après la partition EFI1) > dont l'extension = 330386816 (blocs de 512 octets = 169.158 Go) > dont le rang = n°2 > et dont le type = FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF. C'est cette désignation de type qui est corrompue > mais pour la rectifier il faut commencer par supprimer ce descripteur GPT spécifique avant de le recréer de manière valide. Connaître le de bloc de tête de la partition et son extension exacte en nombre de blocs est toujours l'affaire décisive. On les connaît ici.

Pour éditer la table GPT (= écrire à cette table) => il faut commencer par la désactiver. Càd. supprimer sa prise en charge par le kernel (de l'OS d'installation de ta clé ici démarré) > ce qui s'obtient via le démontage des volumes des partitions montés par le kernel.

- passe la commande :​
Bloc de code:
diskutil umountDisk force disk1

  • qui démonte le disque de ses volumes (et par là désactive la GPT de sa prise en charge par le kernel)

Poste le retour.
 
Quand tu dis : "je démarre" => tu veux dire que tu es actuellement démarré sur le volume Install macOS High Sierra de ta clé USB ?

[clé qui a une table de partition MBR (désignée comme : FDisk_partition_scheme) inadéquate pour un disque de démarrage]​
Question : quel est le modèle de ton Mac ? - de quelle année est-il ?
 
  • Haha
Réactions: litobar71
Exacte ! Pour éviter de devoir passer en mode recovery par internet se qui me prends une heure. C'est un mac book pro mi-2010 avec high sierra, je l'ai précisé au début de mon sujet.

J'ai compris, je le redémarre par internet, et je réitère la manipulation .
 
Attention ! -->

- après redémarrage > les 2 disques n'auront pas forcément le même index d'appareil (disk0 = 120 Go vs disk1 = 250 Go) > car cet indexage marque le de rang dans le processus temporel d'attachement des disques au Système du Mac. Il se peut que les index se retrouvent inversés.​

Donc commence par repasser pour toi seul la commande :
Bloc de code:
diskutil list

  • et regarde dans le tableau des disques si l'index du disque de 250 Go est toujours disk1. Si c'était disk0 > tu passes la commande de démontage du disque en changeant le d'index à la fin.
 
Bloc de code:
disk1 was already unmounted or it has a partitioning scheme so use "diskutil unmountDisk" instead
J'ai donc utlisé la commande "diskutil unmountDisk"
Bloc de code:
Forced umount of all volumes on disk1 was successful
 
Parfait. Enchaîne avec la commande :
Bloc de code:
gpt remove -i 2 disk1

  • la commande supprime le descripteur GPT de la partition disk1s2

Poste le retour

NB. le disk1 est bien le disque de 250 Go toujours ?
 
Descripteur supprimé => donc partition décrite supprimée.

- au cas où cette écriture à la GPT l'aurait réactivée (en remontant un des petits volumes du bas de disque) > repasse la commande :​
Bloc de code:
diskutil umountDisk force disk1

  • qui redémonte le disque de ses volumes

Poste le retour. On recréera le descripteur GPT de façon valide après ça.
 
Parfait. Voici la commande décisive à passer à présent :
Bloc de code:
gpt add -b 409640 -s 330386816 -t 53746F72-6167-11AA-AA11-00306543ECAC -i 2 disk1

  • tu la passes en copier-coller à rebours : tu la copies d'abord ici avec Safari > tu la colles dans le terminal > tu l'exécutes
  • la commande recrée un descripteur GPT de partition telle que : bloc de tête = n° 409640 > extension = 330386816 (blocs de 512 octets = 169.158 Go) > type = "Apple_CoreStorage" (d'après son UUID universel de désignation de type = 53746F72-6167-11AA-AA11-00306543ECAC) > rang = n°2

Poste le retour.

Note : j'avais anticipé le démontage des volumes et préparé mon brouillon.
 
Descripteur recréé => partition décrite ajoutée.

- passe la commande de vérité :​
Bloc de code:
diskutil list

  • et poste le tableau complet des disques.

On verra si la recréation d'une partition CoreStorage valide (via la recréation de son descripteur GPT) => aura permis la réactivation du système de stockage CoreStorage du Fusion Drive et le remontage de son volume terminal.
 
Les disques sont bien réparés :
Bloc de code:
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *120.0 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:          Apple_CoreStorage Fusion                  119.7 GB   disk0s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk0s3

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *250.1 GB   disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:          Apple_CoreStorage Fusion                  169.2 GB   disk1s2
   3:                  Apple_HFS Recovery HD             650.0 MB   disk1s3
   4:           Linux Filesystem                         76.0 GB    disk1s4
   5:       Microsoft Basic Data UNTITLED                4.0 GB     disk1s5

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        +2.1 GB     disk2
   1:                  Apple_HFS OS X Base System        2.0 GB     disk2s1

/dev/disk3 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +5.2 MB     disk3

/dev/disk4 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk4

/dev/disk5 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk5

/dev/disk6 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk6

/dev/disk7 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk7

/dev/disk8 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk8

/dev/disk9 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk9

/dev/disk10 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +12.6 MB    disk10

/dev/disk11 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +4.2 MB     disk11

/dev/disk12 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +1.0 MB     disk12

/dev/disk13 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk13

/dev/disk14 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk14

/dev/disk15 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk15

/dev/disk16 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +1.0 MB     disk16

/dev/disk17 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +6.3 MB     disk17

/dev/disk18 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +6.3 MB     disk18

/dev/disk19 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   disk19

/dev/disk20 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +2.1 MB     disk20

/dev/disk21 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh SSD          +283.0 GB   disk21
                                 Logical Volume on disk0s2, disk1s2
                                 8BBAECF4-6C65-4958-AFE8-77F4B2E92AFE
                                 Unencrypted Fusion Drive
 
Victoire !

- voici ce qui concerne le Fusion Drive -->​
Bloc de code:
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
 
   2:          Apple_CoreStorage Fusion                  119.7 GB   disk0s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk0s3

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER

   2:          Apple_CoreStorage Fusion                  169.2 GB   disk1s2
   3:                  Apple_HFS Recovery HD             650.0 MB   disk1s3

/dev/disk21 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS Macintosh SSD          +283.0 GB   disk21
                                 Logical Volume on disk0s2, disk1s2
                                 8BBAECF4-6C65-4958-AFE8-77F4B2E92AFE
                                 Unencrypted Fusion Drive

  • la recréation d'un descripteur GPT valide a permis la reprojection logique d'une partition valide sur le disque par le kernel (de l'OS de secours démarré). Suite à quoi > il a pu réactiver le CoreStorage complet du Fusion Drive > et remonter son volume terminal Macintosh SSD.

Va à : Menu  > Disque de démarrage => vois-tu affiché le volume Macintosh SSD de ton Fusion Drive comme volume démarrable ?
 
C'est bon ! merci beaucoup ! J'ai redémarré mon mac et tout marche correctement, juste que je ne peux plus sélectionner Linux de mon dual boot au démarrage. Comment l'activer ?
 
Content pour toi !

- si tu démarres avec la touche "alt" pressée pour obtenir l'écran de choix du volume de démarrage => le volume Linux n'est pas affiché ? - comment démarrais-tu sur ce volume ?​

Note : je ne suis pas compétent en ce qui concerne Linux.