10.15 Catalina disque dur interne non monté suite à une partition linux

Barbatruc123

Membre enregistré
29 Mai 2020
8
0
34
Bonjour,

Alors je viens quémander votre aide après avoir cherché sur divers forums une solution à mon problème sans trouver.

Mon matériel : Macbook pro 2013 sous Catalina (je suppose que normalement ce n'est pas un problème matériel car tout fonctionnait très bien avant que je manipule).

N'étant pas un as en informatique, voici les différentes étapes qui ont mené à mon problème :

J'ai réalisé une partition de mon disque dur via utilitaire de disque en 2 (225 Go pour l'MacOs et 275 Go pour Ubuntu).
J'ai installé Refind dans l'EFI et j'ai fait une usb boot d'ubuntu.
J'ai relancé mon ordi et lancé le boot linux depuis l'interface refind.
J'ai installé ubuntu sur la partition de 275Go.

1er problème mineur qui est apparu (ce n'est pas le problème que je cherche à régler car y a plein d'autres cas similaire sur le forum donc j'aurais surement la réponse si je règle mon autre problème) :
Quand je relançais mon ordi ça me lançait automatiquement Ubuntu, pas de refind. Je pouvais néanmoins en utilisant la touche alt au démarrage choisir mon disque de démarrage et ainsi lancer ma partition MacOs qui avait l'air parfaitement fonctionnelle.

2nd problème :
Ayant pensé que j'avais raté la manipulation et voulant tout reprendre à zéro j'ai voulu supprimé la partition ubuntu. Du coup, j'ai lancé le mode recovery et dans utilitaire de disque, je sais pas ce que j'ai fait dans le détail mais je crois que j'ai séléctionné la partition linux et lancé la suppression.
J'ai eu un message d'erreur et quand je relançais mon ordi ubuntu ne se lançait plus et je ne detectait que EFI comme disque de démarrage.
Du coup, j'ai réutilisé la clé boot pour réinstaller ubuntu sur la partition de 275 go afin d'avoir quand même un ordi fonctionnel.

Ma situation actuelle :
J'ai une partition de 225go qui est non montée. De plus, quand je lance le mac en mode recovery il me demande une connexion internet afin de lancer le mode recovery. Et dans ce mode, si j'essaie de lancer l'installation de MacOs il ne détecte aucun disque.

Je met ci-dessous les données de disktutil list car il semble que ce soit utile pour avoir les informations pour régler les problèmes sur les autres cas du forum.

Merci d'avance

Bloc de code:
-bash-3.2# diskutil list
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF               224.6 GB   disk0s2
   3:       Microsoft Basic Data                         275.3 GB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        *1.3 GB     disk1
   1:        Apple_partition_map                         30.7 KB    disk1s1
   2:                  Apple_HFS OS X Base System        1.3 GB     disk1s2
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk2
/dev/disk3
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk3
/dev/disk4
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk4
/dev/disk5
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk5
/dev/disk6
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk6
/dev/disk7
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *6.3 MB     disk7
/dev/disk8
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *2.1 MB     disk8
/dev/disk9
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *1.0 MB     disk9
/dev/disk10
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk10
/dev/disk11
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *524.3 KB   disk11
/dev/disk12
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               *1.0 MB     disk12
 
Bonjour Barbastruc

Voici la description actuelle de la partition macOS -->
Bloc de code:
   2: FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF               224.6 GB   disk0s2

  • le FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF est ce qu'on appelle un : "pseudo-UUID" de type de partition. Pseudo-UUID > parce que le descripteur de la partition dans la table GPT (GUID_Partition_Table) d'en-tête du disque a été corrompu dans sa désignation du type de partition. Catalina étant installé > le type de la partition apparent doit être : "Apple_APFS" > et sa désignation dans le descripteur GPT de la partition devrait être : 7C3457EF-0000-11AA-AA11-00306543ECAC (UUID désignant universellement le type de partition : "Apple_APFS").
  • la corruption d'un descripteur de partition > tant que n'intervient pas par ailleurs de reformatage => n'affecte en rien les blocs du disque correspondant à la partition. Donc le système de fichiers apfs inscrit sur les blocs de tête de la partition et les fichiers gérés par l'apfs => sont en principe intouchés. Il suffit alors de supprimer le descripteur GPT corrompu et de le recréer de manière valide => pour que le système de fichiers apfs inscrit sur les blocs puisse être rechargé par le kernel et le Conteneur qui en dépend avec ses volumes remontés.

Deux questions : a) es-tu d'accord sur le principe pour supprimer / recréer de manière valide le descripteur GPT de la partition apfs ? - b) es-tu actuellement dans une session de secours Catalina (Mac démarré par internet - globe terrestre - les 3 touches ⌘⌥R pressées) ?
 
Bonjour,
Alors je ne comprends pas tout à ce que tu me racontes. Quelles seraient les conséquences à supprimer/recréer le descripteur GPT?
Si c'est pour une question de perte de données alors il n'y a aucun problème car j'avais tous mes fichiers importants sur un dd externe.
Actuellement j'ai accès à ubuntu si je le démarre normalement (qui est normalement sur ma partition disk0s3). Mais je peux aussi avoir accès au mode recovery (Mac démarré par internet - globe terrestre - les 3 touches ⌘⌥R pressées).

Merci d'avance de prendre de ton temps pour m'aider

----------------------------------------------

Je viens de voir qu'un thread viens de ressurgir avec de nombreux problèmes similaires donc je vais éviter de te faire perdre ton temps et je vais voir si j'y trouve pas mon bonheur :up:
Et merci d'avance puisqu'il semblerait que ce soit toi aussi le sauveur sur la thread ;)
 
Dernière édition par un modérateur:
Sur les blocs de tête du disque de ton Mac (les blocs n°1 à 33 exactement) > tu as la table de partition GPT du disque.

- cette table décrit les partitions actuelles du disque. Il s'agit d'une description logique > chaque partition faisant l'objet d'un descripteur spécifique qui dresse le "portrait" de la partition selon 4 paramètres : le de rang de la partition > le de bloc de tête de la partition > l'extension en nombre de blocs de la partition > le type de la partition par son UUID. Il s'agit d'une description logique (virtuelle si tu préfères). Aucune partition n'existant matériellement sur le disque > car aucun bloc n'y porte une balise marquée "début de partition" ni aucun bloc une autre balise marquée "fin de partition".​
- c'est le moteur du Système démarré (le kernel) > celui d'un OS de secours démarré ausi bien => qui fait exister les partitions en tant qu'appareils logiques > suite à sa lecture des descripteurs de la table GPT. Lisant que la partition n° 2 (macOS) commence à tel bloc pour telle extension dans tel type de partition > le kernel construit un "appareil logique" (une partition) > ce qui lui permet d'aller au 1er bloc de cette partition reconstruite > et d'activer le système de fichiers qui a son fichier d'activation sur ce 1er bloc. Ce qui donne lieu au montage des volumes de ces partitions.​
- si un descripteur GPT de partition est corrompu (comporte des erreurs) => le kernel qui lit ce descripteur construit un appareil logique invalide en guise de partition. Comme celui de la partition actuelle de macOS qui comporte un type de partition erroné = FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF. Cette reconstruction invalide d'une partition => bloque le kernel qui ne peut pas aller au 1er bloc de la partition en question activer le système de fichiers apfs toujours intact sur les blocs du disque. Bref : la partition reste "inactive" et le conteneur correspondant non monté.​
- supprimer le descripteur GPT corrompu de la partition ne touche en rien les blocs physiques de la partition et leurs écritures. Mais supprime la description logique invalide de la partition. Recréer un descripteur valide de la partition => permet au kernel de reconstruire un appareil logique de partition convenable => ce qui induit instantanément la réactivation du système de fichiers apfs et le remontage du Conteneur avec ses volumes.​

Je peux bien entendu te guider ici pour la démarche que je viens d'évoquer. J'ai simplement voulu t'éclairer quant au contexte des opérations et donc à leur sens.
 
Super merci pour l'explication détaillée. Je pense que ça va m'aider à mieux comprendre les explications que tu as donné aux autres.
 
Passe la commande :
Bloc de code:
gpt show disk0

  • qui lit la table GPT d'en-tête du disque > et affiche sa description actuelle des blocs du disque en : secteurs des tables de partitions > partitions > bandes d'espace libre

Poste le tableau obtenu. Il est décisif pour connaître l'actuel de bloc de tête de la partition apfs et son extension en nombre de blocs.
 
Voilà ce que j'obtiens :

Bloc de code:
-bash-3.2# gpt show disk0
      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  438587072      2  GPT part - FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
  438996712        280         
  438996992  537774080      3  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  976771072       2063         
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header
 
Parfait. Passe la commande :
Bloc de code:
gpt remove -i 2 disk0

  • qui supprime le descripteur2 corrompu (aucun impact matériel sur les blocs de la partition concernée)

Poste le retour.
 
Voilà les retours pour gpt remove, diskutil list et gpt show puisque je ne savais pas quel retour tu voulais :

Bloc de code:
-bash-3.2# gpt remove -i 2 disk0
disk0s2 removed
-bash-3.2# diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:       Microsoft Basic Data                         275.3 GB   disk0s3

/dev/disk1 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        +2.1 GB     disk1
   1:                  Apple_HFS macOS Base System       2.0 GB     disk1s1

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

/dev/disk3 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +10.5 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               +2.1 MB     disk15

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

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

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

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

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

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

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

-bash-3.2# gpt show disk0
      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  438587352         
  438996992  537774080      3  GPT part - EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
  976771072       2063         
  976773135         32         Sec GPT table
  976773167          1         Sec GPT header
 
Descripteur supprimé => et en conséquence appareil de partition supprimé. Passe la commande :
Bloc de code:
gpt add -b 409640 -s 438587072 -t 7C3457EF-0000-11AA-AA11-00306543ECAC -i 2 disk0 ; diskutil list internal

  • 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 = 438587072 (blocs de 512 octets = 224.55 Go) > type = "Apple_APFS" (via son UUID de type = 7C3457EF-0000-11AA-AA11-00306543ECAC) > rang = n°2 ; puis affiche la nouvelle configuration interne

Poste le retour de la commande.
 
Bloc de code:
-bash-3.2# gpt add -b 409640 -s 438587072 -t 7C3457EF-0000-11AA-AA11-00306543ECAC -i 2 disk0 ; diskutil list internal
disk0s2 added
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk23        224.6 GB   disk0s2
   3:       Microsoft Basic Data                         275.3 GB   disk0s3

/dev/disk23 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +224.6 GB   disk23
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD - Données  208.9 KB   disk23s1
   2:                APFS Volume                         25.9 MB    disk23s2
   3:                APFS Volume Recovery                525.4 MB   disk23s3
   4:                APFS Volume                         2.1 GB     disk23s4
   5:                APFS Volume Macintosh HD - Données  101.1 GB   disk23s5
   6:                APFS Volume                         11.0 GB    disk23s6
 
Comme tu peux le voir -->
Bloc de code:
   2:                 Apple_APFS Container disk23        224.6 GB   disk0s2

/dev/disk23 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +224.6 GB   disk23
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD - Données  208.9 KB   disk23s1
   2:                APFS Volume                         25.9 MB    disk23s2
   3:                APFS Volume Recovery                525.4 MB   disk23s3
   4:                APFS Volume                         2.1 GB     disk23s4
   5:                APFS Volume Macintosh HD - Données  101.1 GB   disk23s5
   6:                APFS Volume                         11.0 GB    disk23s6

  • la recréation d'un descripteur GPT valide a permis au kernel (de l'OS de secours démarré) => de reconstruire un appareil de partition dans le bon type "Apple_APFS" > et de réactiver instantanément le système de fichiers apfs > en remontant le Conteneur et ses volumes. Tous les volumes ne sont pas affichés nominalement (il ne faut pas trop demander au kernel quand même dans ce type de manœuvre).

Passe la commande :
Bloc de code:
diskutil mountDisk disk23 ; diskutil list internal

  • qui remonte tous les volumes du Conteneur > puis réaffiche la configuration interne

Poste le retour.
 
Voilà :

Bloc de code:
-bash-3.2# diskutil mountDisk disk23 ; diskutil list internal
Volume(s) mounted successfully
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk23        224.6 GB   disk0s2
   3:       Microsoft Basic Data                         275.3 GB   disk0s3

/dev/disk23 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +224.6 GB   disk23
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD - Données  208.9 KB   disk23s1
   2:                APFS Volume Preboot                 25.9 MB    disk23s2
   3:                APFS Volume Recovery                525.4 MB   disk23s3
   4:                APFS Volume VM                      2.1 GB     disk23s4
   5:                APFS Volume Macintosh HD - Données  101.1 GB   disk23s5
   6:                APFS Volume Macintosh HD            11.0 GB    disk23s6
 
Parfait : tout est remonté -->

- va au menu :  > Disque de démarrage > sélectionne Macintosh HD > presse le bouton : "Redémarrer"​

=> bonne réouverture de session !