10.13 High Sierra « Impossible de créer un volume de prédémarrage pour l’installation APFS »

effectivement je l'ai tenter mais le globe tournais longtemps sans que rien ne se passe , après c'est possible que je n'est pas attendu assez longtemps, je ne sais pas ...

Bloc de code:
-bash-3.2# sw_vers -productVersion
10.13.6
-bash-3.2#
 
C'est l'OS High Sierra.

Le démarrage par internet fait télécharger en RAM une image-disque de 500 Mo contenant un OS de secours Mojave (sur lequel le Mac démarre à la fin). Ce téléchargement peut prendre dans les 10'. Mais lorsqu'il s'engage > une barre de progression se trouve affichée sous le globe terrestre en rotation > indiquant le temps écoulé et permettant d'estimer le délai restant. Si tu n'as pas eu cette barre de progression > c'est que le téléchargement n'était pas lancé.

Passe encore la commande informative :
Bloc de code:
hdiutil info

  • qui liste les images-disque en cours d'utilisation > avec mention de leur statut de résidentes du disque ou de la RAM

Poste le haut du tableau (montrant les 3 premières images-disques) > qui montrera si ton Mac est actuellement démarré sur un OS de secours du disque > ou cloné en RAM à la volée (un mécanisme de High Sierra sujet à de nombreux ratés). Je conjecture que ton Mac est démarré sur un OS de secours du disque. Cette information --> permettra de savoir s'il est possible à partir de ton actuel démarrage de supprimer l'apfs entier (avant réinstallation) > ou si > le Mac démarré sur l'OS de secours du volume apfs Recovery --> ce n'est pas possible directement.
 
Bloc de code:
-bash-3.2# hdiutil info
framework       : 480.60.1
driver          : 10.13v480.60.1
images          : 19
================================================
image-path      : file:///97440FDE-3E28-4830-9F51-DA2FAF246736/BaseSystem.dmg
shadow-path     : <none>
icon-path       : <none>
image-type      : <unknown>
system-image    : false
blockcount      : 4194256
blocksize       : 512
writeable       : TRUE
autodiskmount   : <unknown>
removable       : false
image-encrypted : <false>
mounting user   : root
mounting mode   : <unknown>
process ID      : <in-kernel>
/dev/disk2    GUID_partition_scheme   
/dev/disk2s1    48465300-0000-11AA-AA11-00306543ECAC    /
================================================
image-path      : ram://10240
shadow-path     : <none>
icon-path       : <none>
image-type      : <unknown>
system-image    : TRUE
blockcount      : 10240
blocksize       : <unknown>
writeable       : TRUE
autodiskmount   : false
removable       : TRUE
image-encrypted : <false>
mounting user   : root
mounting mode   : <unknown>
process ID      : <in-kernel>
/dev/disk3        /private/var/log
================================================
image-path      : ram://1024
shadow-path     : <none>
icon-path       : <none>
image-type      : <unknown>
system-image    : TRUE
blockcount      : 1024
blocksize       : <unknown>
writeable       : TRUE
autodiskmount   : false
removable       : TRUE
image-encrypted : <false>
mounting user   : root
mounting mode   : <unknown>
process ID      : <in-kernel>
/dev/disk4        /Volumes
================================================
 
L'image-disque de tête a une taille de 4194256 blocs (de 512 octets) = 2,14 Go. C'est donc l'image-disque contenant l'OS de secours démarré. Elle a ce statut -->
Bloc de code:
file:///97440FDE-3E28-4830-9F51-DA2FAF246736/BaseSystem.dmg

  • c'est une image-disque BaseSystem.dmg > contenue dans un dossier intitulé 97440FDE-3E28-4830-9F51-DA2FAF246736 (l'UUID de l'ancien volume Macintosh HD) > dans le volume apfs Recovery monté du disque. Il n'est donc pas possible de supprimer directement l'apfs à partir du démarrage actuel sur un des volumes de cet apfs.
----------

On engage donc le procédé indirect. Passe la commande :
Bloc de code:
diskutil ap resizeContainer disk1 118g jhfs+ BOOT 0b

  • respecte tous les espaces libres ; le 0 de 0b est un zéro
  • la commande rétrécit le Conteneur apfs à 118 Go > et crée en-dessous un volume indépendant de 3 Go intitulé BOOT

Poste l'ensemble de l'affichage retourné par la commande.
 
Bloc de code:
-bash-3.2# diskutil ap resizeContainer disk1 118g jhfs+ BOOT 0b
Started APFS operation
Aligning shrink delta to 3 123 073 024 bytes and targeting a new physical store size of 117 999 996 928 bytes
Determined the minimum size for the targeted physical store of this APFS Container to be 3 951 702 016 bytes
Resizing APFS Container designated by APFS Container Reference disk1
The specific APFS Physical Store being resized is disk0s2
Verifying storage system
Using live mode
Performing fsck_apfs -n -x -l /dev/disk0s2
Checking volume
Checking the container superblock
Checking the EFI jumpstart record
Checking the space manager
Checking the object map
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Verifying allocated space
The volume /dev/disk0s2 appears to be OK
Storage system check exit code is 0
Shrinking APFS Physical Store disk0s2 from 121 123 069 952 to 117 999 996 928 bytes
Shrinking APFS data structures
Shrinking partition
Modifying partition map
Initialized /dev/rdisk0s3 as a 3 GB case-insensitive HFS Plus volume with a 8192k journal
Mounting disk
1 new disk created or changed due to APFS operation
Disk from APFS operation: disk0s3
Finished APFS operation
-bash-3.2#
et pas substituable
 
Parfait : le volume BOOT a bien été créé.

Enchaîne avec la commande :
Bloc de code:
asr restore --s / --t /Volumes/BOOT --erase --noprompt

  • la commande appelle l'utilitaire Apple asr (apple_software_restore) pour lui faire cloner en mode "copie-de-blocs" absolue --> l'actuel volume démarré de l'OS de secours (OS X Base System désigné par son point de montage / ) => sur le volume BOOT qu'on vient de créer. Le volume BOOT va être reformaté > renommé OS X Base System comme la source > cloné absolument des blocs écrits de la source > rendu démarrable à la fin par l'inscription d'un chemin de démarrage sur son en-tête. Il y a 2 passes de clonage : Restoring > Validating > la progression en chacune marquée par tranches de 10%.
  • la condition de possiblité d'un clonage en mode "copie-de-blocs" avec un volume source démarré maintenu monté --> tient au fait que le volume d'un OS de secours est toujours monté en mode "lecture seule" à partir de l'image-disque qui le supporte. Ce montage en mode "lecture seule" --> permet à la commande asr l'accès aux blocs de la partition du volume sans obtacle du système de fichiers activé.

Poste l'affichage retourné quand tu auras récupéré -bash-3.2# en signal de complétion.
 
Bloc de code:
-bash-3.2# asr restore --s / --t /Volumes/BOOT --erase --noprompt
    Validating target...done
    Validating source...done
    Validating sizes...done
    Restoring  ....10....20....30....40....50....60....70....80....90....100
    Verifying  ....10....20....30....40....50....60....70....80....90....100
    Remounting target volume...done
-bash-3.2#
 
Pfuittt ! - super-véloce :hilarious: --> tu as désormais un volume OS X Base System (ci-devant BOOT) en queue de disque. Volume démarrable > contenant un OS de secours strictement identique à celui qui est actuellement démarré.

Donc redémarre (Menu  > Redémarrer) > et tiens aussitôt pressée la touche "alt" (option) pour obtenir l'écran de choix du volume de démarrage -->

- choisis OS X Base System > démarre dessus. Tu réobtiens le même écran affichant une fenêtre de 4 Utilitaires macOS.​

Lance le Terminal > repasse la commande :
Bloc de code:
diskutil list

  • et poste le tableau des disque. Le Conteneur apfs devrait avoir désormais un index de disque décalé à disk2.
 
Bloc de code:
-bash-3.2# diskutil list
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         118.0 GB   disk0s2
   3:                  Apple_HFS OS X Base System        3.0 GB     disk0s3

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +118.0 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            489.1 MB   disk1s1
   2:                APFS Volume Preboot                 21.9 MB    disk1s2
   3:                APFS Volume Recovery                519.0 MB   disk1s3
   4:                APFS Volume VM                      2.1 GB     disk1s4

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

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

/dev/disk7 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   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               +12.6 MB    disk9

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

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

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

/dev/disk13 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +524.3 KB   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               +1.0 MB     disk15

/dev/disk16 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                            untitled               +6.3 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               +524.3 KB   disk18

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

-bash-3.2#
 
On voit bien la nouvelle partition ici -->
Bloc de code:
   3:                  Apple_HFS OS X Base System        3.0 GB     disk0s3

  • le Conteneur a gardé son index disk1. Aucune importance.
  • passe la commande :
Bloc de code:
diskutil ap deleteContainer disk1 "Macintosh HD"

  • mets "Macintosh HD" avec les ""
  • la commande supprime entièrement l'apfs > et reformate un volume Macintosh HD standard - réinstallable

Poste l'affichage retourné.
 
Bloc de code:
-bash-3.2# diskutil ap deleteContainer disk1 "Macintosh HD"
Started APFS operation on disk1
Deleting APFS Container with all of its APFS Volumes
Unmounting Volumes
Unmounting Volume "Macintosh HD" on disk1s1
Unmounting Volume "Preboot" on disk1s2
Unmounting Volume "Recovery" on disk1s3
Unmounting Volume "VM" on disk1s4
Deleting Volumes
Deleting Container
Wiping former APFS disks
Switching content types
Reformatting former APFS disks
Initialized /dev/rdisk0s2 as a 110 GB case-insensitive HFS Plus volume with a 16384k journal
Mounting disk
1 new disk created or changed due to APFS operation
Disk from APFS operation: disk0s2
Finished APFS operation on disk1
-bash-3.2#
 
Parfait : volume reformaté.

Dans la fenêtre des 4 Utilitaires macOS > lance l'option : "Réinstaller macOS" --> et choisis Macintosh HD comme destination lorsque cela te sera proposé.

----------

Note : ton MacBook Air crache le feu !

- lorsque l'installation sera finie et ta session ouverte --> il restera à supprimer le petit volume auxiliaire OS X Base System de queue de disque > et à récupérer son espace au nouveau Conteneur apfs.
 
c'est bon mon ma session c'est ouverte merci beaucoup, du coup que dois-je faire maintenant pour supprimer le petit volume etc
 
Content pour toi !

- tu trouves le Terminal de macOS at: Applications > Utilitaires > Terminal. Lance-le > passe la commande :
Bloc de code:
diskutil list

  • et poste le tableau des disques.
 
Bloc de code:
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         118.0 GB   disk0s2
   3:                  Apple_HFS OS X Base System        3.0 GB     disk0s3

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +118.0 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            12.9 GB    disk1s1
   2:                APFS Volume Preboot                 21.6 MB    disk1s2
   3:                APFS Volume Recovery                519.0 MB   disk1s3
   4:                APFS Volume VM                      2.1 GB     disk1s4

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +207.2 MB   disk2
   1:        Apple_partition_map                         32.3 KB    disk2s1
   2:                  Apple_HFS Google Chrome           207.1 MB   disk2s2
 
Passe la commande (copier-coller) :
Bloc de code:
diskutil eraseVolume free null disk0s3 ; diskutil ap resizeContainer disk1 0b ; diskutil list

  • la commande supprime la partition Windows > récupère son espace au Conteneur apfs et à sa partition de base disk0s2 > réaffiche le tableau des disques

Poste l'ensemble de l'affichage retourné.
 
Bloc de code:
diskutil eraseVolume free null disk0s3 ; diskutil ap resizeContainer disk1 0b ; diskutil list
Started erase on disk0s3 OS X Base System
Unmounting disk
Finished erase on disk0
Started APFS operation
Aligning grow delta to 3 123 073 024 bytes and targeting a new physical store size of 121 123 069 952 bytes
Determined the maximum size for the targeted physical store of this APFS Container to be 121 122 041 856 bytes
Resizing APFS Container designated by APFS Container Reference disk1
The specific APFS Physical Store being resized is disk0s2
Verifying storage system
Using live mode
Performing fsck_apfs -n -x -l /dev/disk0s2
Checking volume
Checking the container superblock
Checking the EFI jumpstart record
Checking the space manager
Checking the object map
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Checking the APFS volume superblock
Checking the object map
Checking the fsroot tree
Checking the snapshot metadata tree
Checking the extent ref tree
Checking the snapshots
Verifying allocated space
warning: Overallocation Detected on Main device: (1599922+14) bitmap address (17303)
warning: Overallocation Detected on Main device: (1599936+14) bitmap address (17303)
warning: Overallocation Detected on Main device: (1599957+8) bitmap address (17303)
warning: Overallocation Detected on Main device: (1599998+2) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600000+1) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600015+33) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600050+14) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600064+4) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600069+14) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600084+14) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600134+58) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600192+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600256+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600320+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600384+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600448+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600512+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600576+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600640+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600704+64) bitmap address (17303)
warning: Overallocation Detected on Main device: (1600768+41) bitmap address (17303)
The volume /dev/disk0s2 appears to be OK
Storage system check exit code is 0
Growing APFS Physical Store disk0s2 from 117 999 996 928 to 121 123 069 952 bytes
Modifying partition map
Growing APFS data structures
APFS Container Resize error code is 49168
A problem occurred; undoing all changes
Modifying partition map
Error: -69606: A problem occurred while resizing APFS Container structures
/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *121.3 GB   disk0
   1:                        EFI EFI                     209.7 MB   disk0s1
   2:                 Apple_APFS Container disk1         118.0 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +118.0 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            14.3 GB    disk1s1
   2:                APFS Volume Preboot                 21.6 MB    disk1s2
   3:                APFS Volume Recovery                519.0 MB   disk1s3
   4:                APFS Volume VM                      2.1 GB     disk1s4

/dev/disk2 (disk image):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:     Apple_partition_scheme                        +207.2 MB   disk2
   1:        Apple_partition_map                         32.3 KB    disk2s1
   2:                  Apple_HFS Google Chrome           207.1 MB   disk2s2
 
Cette mention -->
Bloc de code:
Error: -69606: A problem occurred while resizing APFS Container structures

  • révèle que l'apfs s'est installé avec une erreur interne. Qui verrouille en taille le Conteneur apfs. Bref : échec de la récupération d'espace libre --> la partition a été supprimée mais il y a 3 Go de blocs sans emploi en queue de disque. Pas de chance.

Est-ce que tu serais décidé à effacer tout pour réinstaller de neuf ? --> pour cela > il faudrait démarrer sur l'OS de secours > et le cloner à une clé USB pour pouvoir démarrer le Mac dessus > effacer l'apfs du disque interne > remettre un volume contenant tout l'espace disponible > réinstaller.

- à moins que tu n'aies un DDE USB avec de la place disponible et une configuration Mac (table GUID > volume jhfs+). Alors on pourrait créer un 2è volume > cloner Macintosh HD à ce volume > puis démarré sur le clone > effacement du disque interne > reconversion à l'apfs > clonage à rebours.​

Note : les erreurs d'installation de l'apfs ont fait partie des loupés de High Sierra - trop nombreux pour que je les détaille (la liste ne serait pas triste à exposer).