10.13 High Sierra Impossible d'augmenter taille d'un conteneur

justinjean

Membre enregistré
23 Décembre 2020
7
1
44
Bonjour à tous,

J'ai un problème avec la gestion des conteneurs sur High Sierra.

J'ai installé High Sierra depuis une vieille version de MacOS. J'ai eu 2 conteneurs avec leurs volumes associés. En supprimant un des deux volumes, j'ai perdu l'espace physique que je n'arrive plus à allouer au conteneur principal.

Voilà ce que me donne un diskutil list dans le terminal :

Bloc de code:
MacBook-Air-de-Justin:~ jean$ 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         45.9 GB    disk0s2

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

Je tente la commande suivante : diskutil apfs resizeContainer disk0s2 0

Et voilà la sortie :

Bloc de code:
Started APFS operation
Error: -69743: The new size must be different than the existing size

Avez-vous une idée ?
Merci pour votre aide
 
Dernière édition par un modérateur:
Bonjour justinjean

Ça veut dire que la bande d'espace libre n'est pas située en-dessous de la partition apfs disk0s2 (donc en queue de disque) > mais en-dessus (entre les partitions EFI disk0s1 & apfs disk0s2). Comme de l'espace libre ne se récupère à une partition que de "bas en haut" (et pas l'inverse) => tu ne peux pas le récupérer à la partition apfs de manière directe.

- pour visualiser se situe la bande d'espace libre actuelle > et plus précisément le de son bloc de départ et son extension en nombre de blocs => il faut passer une commande de lecture de la table de partition GPT d'en-tête du disque. Mais cet accès en lecture est interdit en cas d'activation du SIP (protocole de sécurisation).​

Donc passe la commande préliminaire :
Bloc de code:
csrutil status
  • qui affiche le statut actuel du SIP

Poste le retour.
 
Merci macomaniac pour ta réponse.
J'ai pas vraiment compris le fond. Mais voilà la sortie de la commande:

Bloc de code:
MacBook-Air-de-Justin:~ jean$ csrutil status
System Integrity Protection status: enabled.

Merci pour ton aide
 
Dernière édition par un modérateur:
SIP activé (enabled).

----------

Pour désactiver le SIP > redémarre > les 2 touches ⌘R (cmd R) tenues pressées de l'écran noir => à la  = démarrage sur l'OS de secours. Tu obtiens un écran affichant une fenêtre de 4 Utilitaires macOS. Va à la barre de menus supérieure de l'écran > Menu Utilitaires > sous-menu : Terminal.

Lance-le et passe la commande :
Bloc de code:
csrutil disable
  • qui désactive le SIP

Cela fait > quitte le Terminal > va à : Menu  > Disque de démarrage > sélectionne Macintosh HD > redémarre dessus.

----------

De retour dans ta session > passe la commande :
Bloc de code:
sudo gpt show disk0
  • à validation > une demande de password s'affiche (commande sudo) --> tape ton mot-de-passe de session admin en aveugle - aucun caractère ne se montrant à la frappe - et revalide
  • la commande lit la table GPT d'en-tête du disque => et affiche en retour la distribution des blocs gérés par cette table en : secteur des tables de partitions > partitions > bandes d'espace libre > sauvegarde de la GPT en queue de disque

Poste le tableau obtenu.
 
Je tente ça. Merci

Voilà le tableau:
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 146939848
147349488 89628648 2 GPT part - 7C3457EF-0000-11AA-AA11-00306543ECAC
236978136 7
236978143 32 Sec GPT table
236978175 1 Sec GPT header
merci pour ton aide
 
Voici la bande d'espace libre -->
Bloc de code:
409640 146939848
  • elle commence au bloc n°409640 (= 1er bloc libre après la partition EFI1) > et a une extension de 146939848 blocs (de 512 octets = 75.23 Go). Elle est bien intercalée entre les partitions n°1 (EFI) et n°2 (apfs) du disque.
  • il est possible depuis la session de secours du disque => de convertir cette bande d'espace libre en partition portant un volume de format apfs. Après clonage de la distribution du Conteneur du bas (Macintosh HD) dans celui du haut > et redémarrage sur le Conteneur clone du haut => il sera possible de supprimer la partition apfs du bas et de récupérer son espace à celle du haut. Ce qui réglera la question.

Je ne peux pas m'occuper de cette opération tout de suite (je vais bientôt me déconnecter). Quand seras-tu de nouveau disponible ?
 
Merci pour ton retour.
Je suis dispo samedi matin.
En seconde option, est-il possible de créer un nouveau conteneur séparé pour au moins profiter d'un volume utilisable ?
Bonne soirée & joyeux noël
 
Dernière édition par un modérateur:
  • J’aime
Réactions: Lamahi
Oui : tu peux avoir 2 Conteneurs distincts > virtualisés par 2 partitions apfs distinctes. Tu n'auras qu'à refaire signe ici samedi matin.

- Bon Noël à toi aussi.​
 
  • J’aime
Réactions: Lamahi
Hello macomaniac,
En espérant que tu as passé un joyeux Noël.
Je vais être dispo, si j'avais tu as de nouvelle idées pour solutionner mon pb!
 
Il faut que tu démarres via ⌘R pour ouvrir la session de secours. Quand tu as les 4 Utilitaires macOS > passe la commande :
Bloc de code:
diskutil list
  • qui affiche le tableau des disques

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 > tu colles dans un Bloc de code

Note 1 : si tu ne peux pas poster via le Safari de la session de secours (ça arrive) --> poste une photo du tableau (à partir du commencement = le disque /dev/disk0 ou disque physique interne) - tu as un bouton : "Joindre un fichier" en bas de cette page.

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 Macomaniac.
Ci dessous le tableau :
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 disk2         45.9 GB    disk0s2

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

/dev/disk2 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +45.9 GB    disk2
                                 Physical Store disk0s2
   1:                APFS Volume Macintosh HD            34.8 GB    disk2s1
   2:                APFS Volume Preboot                 22.3 MB    disk2s2
   3:                APFS Volume Recovery                512.1 MB   disk2s3
   4:                APFS Volume VM                      2.1 GB     disk2s4

/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

-bash-3.2#
 
Dernière édition par un modérateur:
Le Conteneur apfs est disk2. Quand tu seras de nouveau disponible > ouvre de nouveau la session de secours > passe la commande :
Bloc de code:
diskutil umountDisk force disk2
  • qui démonte les volumes du Conteneur

Poste le retour.

Note : pour éditer la table GPT (= y écrire un nouveau descripteur) > il faut la désactiver = la soustraire à sa prise en charge par le kernel (moteur) de l'OS démarré (ici : OS de secours). Démonter tous les volumes montés relevant du disque géré => force cette libération = désactivation de la GPT.
 
J'imagine qu'une fois démonté, je ne pourrai pas redémarrer en mode standard ? Ou est-ce que le montage est dynamique au démarrage du kernel ?
Quelle sont les étapes suivantes ?
 
Dernière édition par un modérateur:
Tu pourras bien entendu redémarrer ensuite normalement > les volumes se remontant automatiquement dans le temps du boot.

- pour effectuer la recréation d'une partition avec la bande d'espace ilbre => il va falloir qu'on soit synchronisés (connectés ensemble). Refais signe ici entre 10H et 12H ce dimanche - si tu peux.​