MacOS plus bootable après mise à jour

On voit bien l'attestation d'une bande d'espace libre de 501 Go sur le disque -->
Bloc de code:
                    (free space)                         501.2 GB   -
  • correspondant à la partition supprimée. Donc un descripteur de partition concernant cet espace libre aurait dû pouvoir être recréé. Mais cette recréation a avorté. Pourquoi ? --> parce que sur l'unique bloc n° 0 du disque > existe une table de partition alternative de type MBR > qui décrit les partitions du disque selon un schéma Windows. Cette description alternative de type MBR > incluant la persistence d'un descripteur de la partition macOS en mode MBR --> bloque la recréation d'un descripteur dans la GPT. Cette table de partition MBR doit avoir un usage pour le boot de ton Windows voire de Linux.

Passe la commande :
Bloc de code:
sudo fdisk /dev/disk4
  • qui affiche la structure de la table MBR du bloc n°0 du disk4

Poste le retour.
Bloc de code:
Disk: /dev/disk4    geometry: 121601/255/63 [1953525168 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: EE    0   0   1 - 1023 254  63 [         1 -     409639] <Unknown ID>
*2: DA 1023 254  63 - 1023 254  63 [    409640 -  978939864] <Unknown ID>
 3: 83 1023 254  63 - 1023 254  63 [ 979349504 -  195758080] Linux files*
 4: 0B 1023 254  63 - 1023 254  63 [1175108120 -    1074216] Win95 FAT-32
 
Voici le descripteur MBR de l'ancienne partition macOS dans la table du bloc n°0 :
Bloc de code:
*2: DA 1023 254  63 - 1023 254  63 [    409640 -  978939864] <Unknown ID>
  • c'est ce descripteur résiduel qui doit bloquer la recréation d'un descripteur neuf dans la GPT. On va donc le supprimer dans la table MBR (sans toucher les autres).

Passe la commande :
Bloc de code:
sudo fdisk -e /dev/disk4
  • qui ouvre la table MBR du disk4 en mode édition

Poste le retour.
 
Voici le descripteur MBR de l'ancienne partition macOS dans la table du bloc n°0 :
Bloc de code:
*2: DA 1023 254  63 - 1023 254  63 [    409640 -  978939864] <Unknown ID>
  • c'est ce descripteur résiduel qui doit bloquer la recréation d'un descripteur neuf dans la GPT. On va donc le supprimer dans la table MBR (sans toucher les autres).

Passe la commande :
Bloc de code:
sudo fdisk -e /dev/disk4
  • qui ouvre la table MBR du disk4 en mode édition

Poste le retour.
Bloc de code:
fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory
Enter 'help' for information
fdisk: 1>
 
fdisk: 1> est l'invite de commande interactive de fdisk. Saisis :
Bloc de code:
edit 2
  • et exécute avec Entrée. La commande requiert l'édition du descripteur MBR2

Poste le retour.
 
fdisk: 1> est l'invite de commande interactive de fdisk. Saisis :
Bloc de code:
edit 2
  • et exécute avec Entrée. La commande requiert l'édition du descripteur MBR2

Poste le retour.
Bloc de code:
fdisk: 1> edit 2
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
*2: DA 1023 254  63 - 1023 254  63 [    409640 -  978939864] <Unknown ID>
Partition id ('0' to disable)  [0 - FF]: [DA] (? for help)
 
Il est demandé de saisir un type de partition (Partition id) via un hexcode. Saisis :
Bloc de code:
00
  • (2 zéros) et exécute --> en saisissant un type nul de partition > l'instruction supprime la description de la partition

Poste le retour.
 
La partition n°2 est invalidée dans la MBR. Mais ! il ne s'agit encore que d'une instruction en cache.

- saisis :​
Bloc de code:
write
  • et exécute --> pour demander l'écriture de cette édition dans la table MBR

Poste le retour.
 
La partition n°2 est invalidée dans la MBR. Mais ! il ne s'agit encore que d'une instruction en cache.

- saisis :​
Bloc de code:
write
  • et exécute --> pour demander l'écriture de cette édition dans la table MBR

Poste le retour.
Bloc de code:
Device could not be accessed exclusively.
A reboot will be needed for changes to take effect. OK? [n]
 
Saisis :
Bloc de code:
y
  • (comme yes) et exécute pour confirmer l'écriture à la table

Poste le retour.
 
Parfait. Saisis :
Bloc de code:
quit
  • et exécute --> pour quitter le programme interactif fdisk et revenir dans le terminal classique

Poste le retour.
 
Tu as récupéré l'invite de commande habituelle de ton terminal.

- bon : le descripteur MBR de la partition macOS a été supprimé dans la table > mais le kernel (le moteur logique de ton OS démarré) continue lui de prendre en charge la partition décrite en mode MBR. Il faut donc lui "rafraîchir la mémoire" via un redémarrage.​

Donc redémarre une fois (le disque externe toujours attaché) > puis de retour dans ta session interne > repasse une commande :
Bloc de code:
diskutil list external
  • et poste le retour --> que j'aie bien la confirmation si le disque externe est toujours disk4.
 
Tu as récupéré l'invite de commande habituelle de ton terminal.

- bon : le descripteur MBR de la partition macOS a été supprimé dans la table > mais le kernel (le moteur logique de ton OS démarré) continue lui de prendre en charge la partition décrite en mode MBR. Il faut donc lui "rafraîchir la mémoire" via un redémarrage.​

Donc redémarre une fois (le disque externe toujours attaché) > puis de retour dans ta session interne > repasse une commande :
Bloc de code:
diskutil list external
  • et poste le retour --> que j'aie bien la confirmation si le disque externe est toujours disk4.
Bloc de code:
/dev/disk4 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk4
   1:                        EFI ⁨EFI⁩                     209.7 MB   disk4s1
                    (free space)                         501.2 GB   -
   2:           Linux Filesystem ⁨⁩                        100.2 GB   disk4s3
   3:                        EFI ⁨UBUNTU⁩                  550.0 MB   disk4s4
   4:           Linux Filesystem ⁨⁩                        129.2 GB   disk4s5
   5:       Microsoft Basic Data ⁨BOOTCAMP⁩                268.3 GB   disk4s6
   6:                  Apple_HFS ⁨rEFInd⁩                  302.0 MB   disk4s7
   7:                  Apple_HFS ⁨Kali⁩                    211.8 MB   disk4s8
 
Toujours disk4. On va procéder à la recréation du descripteur GPT de la partition macOS > admis que la suppression de son descripteur MBR dans la table alternative du bloc n°0 a dégagé la route pour cette recréation.

- passe d'abord la commande :​
Bloc de code:
diskutil umountDisk force disk4
  • qui démonte les volumes du disk4 pour désactiver la GPT (tu auras noté que la commande fdisk à la différence de la commande gpt n'a pas besoin d'une désactivation de la table adressée)

Poste le retour.
 
Toujours disk4. On va procéder à la recréation du descripteur GPT de la partition macOS > admis que la suppression de son descripteur MBR dans la table alternative du bloc n°0 a dégagé la route pour cette recréation.

- passe d'abord la commande :​
Bloc de code:
diskutil umountDisk force disk4
  • qui démonte les volumes du disk4 pour désactiver la GPT (tu auras noté que la commande fdisk à la différence de la commande gpt n'a pas besoin d'une désactivation de la table adressée)

Poste le retour.
Bloc de code:
Forced unmount of all volumes on disk4 was successful
 
Bon. Repasse la commande antérieure qui avait été bloquée par concurrence de la MBR :
Bloc de code:
sudo gpt add -b 409640 -s 978939864 -t 7C3457EF-0000-11AA-AA11-00306543ECAC disk4 ; diskutil list external
  • qui recrée un descripteur GPT de la partition macOS > puis affiche la configuration externe

Poste le retour.
 
Bon. Repasse la commande antérieure qui avait été bloquée par concurrence de la MBR :
Bloc de code:
sudo gpt add -b 409640 -s 978939864 -t 7C3457EF-0000-11AA-AA11-00306543ECAC disk4 ; diskutil list external
  • qui recrée un descripteur GPT de la partition macOS > puis affiche la configuration externe

Poste le retour.
Bloc de code:
gpt add: disk4: Suspicious MBR at sector 0
disk4s2 added
/dev/disk4 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk4
   1:                        EFI ⁨EFI⁩                     209.7 MB   disk4s1
   2:                 Apple_APFS ⁨Container disk5⁩         501.2 GB   disk4s2
   3:           Linux Filesystem ⁨⁩                        100.2 GB   disk4s3
   4:                        EFI ⁨UBUNTU⁩                  550.0 MB   disk4s4
   5:           Linux Filesystem ⁨⁩                        129.2 GB   disk4s5
   6:       Microsoft Basic Data ⁨BOOTCAMP⁩                268.3 GB   disk4s6
   7:                  Apple_HFS ⁨rEFInd⁩                  302.0 MB   disk4s7
   8:                  Apple_HFS ⁨Kali⁩                    211.8 MB   disk4s8

/dev/disk5 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +501.2 GB   disk5
                                 Physical Store disk4s2
   1:                APFS Volume ⁨Macintosh HD - Data⁩     427.0 GB   disk5s1
   2:                APFS Volume ⁨Preboot⁩                 24.9 MB    disk5s2
   3:                APFS Volume ⁨Recovery⁩                525.8 MB   disk5s3
   4:                APFS Volume ⁨VM⁩                      3.2 GB     disk5s4
   5:                APFS Volume ⁨Macintosh HD⁩            11.3 GB    disk5s5
 
Victoire ! --> la recréation d'un descripteur de type APFS valide dans la GPT --> a instantanément permis au kernel (de l'OS démarré) de construire un appareil logique de partition valide (device) > d'aller au bloc de tête de cette partition sur le disque exécuter le fichier d'initialisation du système de fichiers apfs toujours intact sur les blocs > et de redéployer la famille de volumes logiques intacte du Conteneur -->
Bloc de code:
   2:                 Apple_APFS ⁨Container disk5⁩         501.2 GB   disk4s2

/dev/disk5 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +501.2 GB   disk5
                                 Physical Store disk4s2
   1:                APFS Volume ⁨Macintosh HD - Data⁩     427.0 GB   disk5s1
   2:                APFS Volume ⁨Preboot⁩                 24.9 MB    disk5s2
   3:                APFS Volume ⁨Recovery⁩                525.8 MB   disk5s3
   4:                APFS Volume ⁨VM⁩                      3.2 GB     disk5s4
   5:                APFS Volume ⁨Macintosh HD⁩            11.3 GB    disk5s5
  • ton problème est a priori résolu.