Bootcamp : problème de partitionnement sur FusionDrive

AppleInside

Membre actif
24 Janvier 2005
161
1
42
www.dabeast.13.fr
Bonjour à tous,

Cela fait 2 jours que j'écume les forums à la recherche d'aide sur mon problème, que je teste les solutions proposées, mais sans succès. Aussi je me permet d'ouvrir un nouveau sujet ici.

J'ai acheté d'occasion il y a quelques années mon mac. C'est un iMac 27" Late 2012 avec un fusion drive de 3 To tournant sur la dernière version de Sierra.
Il sort de réparation car le HDD du fusion drive m'avait lâché, j'ai donc un Fusion drive avec un HDD tout neuf, et le SSD de départ.
Ce week-end j'entreprends d'installer Windows 10 via Bootcamp, mais au cours du partitionnement (j'ai choisis alors 1To pour Windows), l'assistant Bootcamp reste figé et au bout de quelques heures je décide de forcer le redémarrage.
Au redémarrage l'assistant de disque ainsi que celui de bootcamp ne voient plus ce 1To. J'ai alors commencé mes recherches sur les forums.
Après démarrage en mode recovery et plusieurs SOS et repairdisk, j'ai retrouvé mes 3To sur mon Fusion Drive, mais il me reste des erreurs sur tous mes volumes "Incorrect size for logical volume", et j'ai l'erreur suivante dans l'assistant bootcamp "Votre disque n'a pu être partitionné".

Voici donc ou j'en suis, pourriez-vous m'aider pour la suite svp?
Un grand merci d'avance

Pour info voici les logs du terminal
Bloc de code:
CoreStorage logical volume groups (1 found)
|
+-- Logical Volume Group 33626D57-3C85-4F9F-AEBD-467B31CE4B4F
    =========================================================
    Name:         test1
    Status:       Online
    Size:         3121237860352 B (3.1 TB)
    Free Space:   0 B (0 B)
    |
    +-< Physical Volume C4A4E74F-9031-4873-9A62-224B2245466B
    |   ----------------------------------------------------
    |   Index:    0
    |   Disk:     disk0s2
    |   Status:   Online
    |   Size:     120988852224 B (121.0 GB)
    |
    +-< Physical Volume C383729F-5832-457F-8C56-E7DA9B1CFE85
    |   ----------------------------------------------------
    |   Index:    1
    |   Disk:     disk1s2
    |   Status:   Online
    |   Size:     3000249008128 B (3.0 TB)
    |
    +-> Logical Volume Family 9FBBBD56-F217-47CB-B58C-CA8F8FC50225
        ----------------------------------------------------------
        Encryption Type:         None
        |
        +-> Logical Volume 9781DEB0-4BB1-42B1-BCA7-8DD674C1F42D
            ---------------------------------------------------
            Disk:                  disk2
            Status:                Online
            Size (Total):          3115382505472 B (3.1 TB)
            Revertible:            No
            LV Name:               FusionDrive
            Volume Name:           FusionDrive
            Content Hint:          Apple_HFS
            LVG Type:              Fusion, Sparse

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_CoreStorage test1                   121.0 GB   disk0s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk0s3

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *3.0 TB     disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:          Apple_CoreStorage test1                   3.0 TB     disk1s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk1s3

/dev/disk2 (internal, virtual):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS FusionDrive            +3.1 TB     disk2
                                 Logical Volume on disk0s2, disk1s2
                                 9781DEB0-4BB1-42B1-BCA7-8DD674C1F42D
                                 Unencrypted Fusion Drive
 
Dernière édition par un modérateur:
Salut AppleInside

Après une tentative de repartitionnement impliquant un CoreStorage > le message :
Bloc de code:
The Logical Volume has an incorrect side
désigne une erreur de taille interne au Groupe de Volumes Logiques.

Le Groupe de Volumes Logiques d'un Fusion Drive est un Conteneur CoreStorage qui :

  • importe 2 magasins de stockage physique dits "Physical Volumes" inscrits sur les 2 partitions principales du SSD & du HDD
  • exporte 1 disque virtuel dit "Logical Volume" qui est le miroir des 2 Physical Volumes (un système de fichiers JHFS+ ancré sur le dev node du Logical Volume monte un volume standard sur cet espace-disque virtuel)

Une erreur de taille interne à un tel dispositif signifie que la taille du Volume Logique (disque virtuel miroir) est beaucoup plus petite que la somme des tailles des 2 magasins de stockage Physical Volumes. Quand je dis : « beaucoup plus petite » - voici comment cela doit être interprété -->

  • régulièrement la taille du Logical Volume est plus petite d'une centaine de Mo environ que la somme des tailles des Physical Volumes à partir desquels il est exporté
  • une erreur de taille désigne par contre une soustraction d'espace qui dépasse le Go et peut atteindre même plusieurs Go d'espace.
----------

Si j'applique ce schéma d'insterprétation à ton cas de figure (tu as eu l'amabilité de fournir les tableaux des partitions et du CoreStorage sur un plateau) > je note que -->

  • la somme des tailles des magasins de stockage physique Physical Volumes est : 121 Go + 3 To = 3,1 To. Exactement 120988852224 bytes + 3000249008128 bytes = 3121237860352 bytes.
  • la taille du Logical Volume est : 3,1 To. Exactement : 3115382505472 bytes.

Mesurée en bytes > la taille du Logical Volume est donc de 5855354880 bytes soit 5,45322 Go plus petite que la somme des tailles des magasins de stockage Physical Volumes.

On a donc bien affaire à une erreur de taille interne de 5,4 Go > erreur qui n'est pas lisible si on se réfère aux mesures raccourcies en To > mais qui ressort en se rapportant aux bytes.

----------

D'après mon expérience > une erreur de taille interne à un CoreStorage est dans la plupart des cas irréparable. Si tu as effectué des repairDisk sur les 2 disques physiques et un repairVolume sur le volume monté terminal du FusionDrive > sans qu'il y ait de modifications > alors c'est le cas.

Tu peux toujours passer (dans le «Terminal» de l'OS démarré : opération supportée en mode "live") la commande spécialisée :
Bloc de code:
diskutil coreStorage resizeLV 9781DEB0-4BB1-42B1-BCA7-8DD674C1F42D 0b

  • qui appelle diskutil > avec la spécification CoreStorage > le verbe resizeLV (re-dimensionner le Logical Volume) > l'UUID de ce même Logical Volume > et la valeur de taille 0b (= 0_byte > qui s'interprète ainsi : "récupérer tout l'espace libre disponible sur les Physical Volumes sans en exempter aucun byte")

=> tu vas bien voir si tu obtiens un message d'erreur ou si la commande est validée.

  • Si la commande était validée > il faudrait que tu repasses un diskutil cs list et que tu postes le tableau > afin qu'on puisse décompter en mesure de bytes les tailles respectives des 2 Physical Volumes vs le Logical Volume et vérifier si l'écart de 5,4 Go a disparu.

  • Si la commande est rejetée (ou si elle passe sans changement des mesures en bytes) > alors sache qu'un CoreStorage avec une erreur de taille interne est fonctionnel > mais figé : il ne peut absolument pas être re-dimensionné en tant que tout (le Conteneur > le Physical Volume du HDD seul > la partition disk1s2 du HDD seul > le Logical Volume > le système de fichiers JHFS+ terminal : tout en synchronicité). Ce qui ne fait pas tes affaires > parce que tu veux rétrécir ton CoreStorage > afin de créer une partition BOOTCAMP en queue de HDD.

=> dans ce dernier cas (comme mon long laïus avait la fonction diplomatique de t'y préparer) > tu dois démarrer sur un Système externe indépendant > supprimer ton Fusion Drive > et le re-créer de neuf.
 
Dernière édition par un modérateur:
Un GRAND merci macomaniac pour cette réponse très détaillée, j'avais pu voir tes réponses sur des sujets similaires, tu prends toujours du temps pour nous répondre, c'est vraiment très appréciable.

J'ai effectué ta dernière commande proposée, et j'ai bien une erreur "Error: -69674: The provided Core Storage logical volume has an incorrect size; you should run whole-disk repair". J'ai bien retenté l'opération de repairDisk et repairVolume via le terminal sur la partition Recovery, mais encore sans succès.

Je me dirige donc vers un formatage, aussi j'aurai 2 dernières questions : quand tu dis "supprimer ton Fusion Drive > et le re-créer de neuf" est-ce bien un formatage/reinstallation "classique" dont il est question (passage par l'utilitaire de disque depuis une clef USB d'installation de Sierra), ou bien y a t-il d'autres actions précises à faire? Et enfin lorsque tout sera réinstallé, à part commencer directement par bootcamp, y a t-il des actions à faire (ou ne pas faire) pour ne pas reproduire d'erreur dans ce partitionnement bootcamp?

Merci d'avance.
 
Salut AppleInside

Hé non ! Ce n'est pas qu'un simple reformatage.

Un reformatage supprimerait simplement le système de fichiers JHFS+ accoché tout en haut de la pile du CoreStorage Fusion Drive, sur la couche logique du Logical Volume (à un point d'ancrage appelé dev node : nœud d'appareil) > pour en recréer un neuf accroché au point d'ancrage du la même couche du Logical Volume. Bref > tu ne ferais que reformater ton volume FusionDrive qui réside sur le disque virtuel du Logical Volume.

Sans toucher le Logical Volume. Lequel continuerait d'être plus petit de 5,4 Go que la somme des 2 magasins de stockage des Physical Volumes. Bref : tu ne pourrais toujours pas re-partitionner ton CoreStorage afin de créer une partition BOOTCAMP à cause de cette erreur de taille interne conservée.

Ce qu'il te faut > c'est démarrer sur un volume indépendant (je te conseille un clone recelé dans le volume d'un DDE USB) > et supprimer ton Fusion Drive dans un premier temps (par une commande spécialisée) --> ce qui va libérer les 2 disques et les rendre à leur indépendance. Puis, dans un 2è temps, recréer un Fusion Drive neuf (par 2 commandes spécialisées) --> ce qui va reconstruire un Conteneur CoreStorage > important 2 magasins Physical Volumes inscrits sur les 2 partitions des disques > et exportant un Logical Volume congruent en taille avec ces Physical Volumes (et supportant un système de fichiers JHFS+ montant un volume standard en haut de la pile). Cela fait > tu clones à rebours ton clone dans le volume neuf résidant sur le Logical Volume. [NB. Il y aura un probllème concernant la recréation de la Recovery HD].

L'«Utilitaire de Disque» est absolument incapable de gérer autant la suppression d'un Fusion Drive que sa reconstruction : tout doit passer nécessairement par le «Terminal». Je suis à ta disposition pour te passer les commandes ad hoc quand tu en auras besoin.

----------

Dans l'immédiat > il faut que tu disposes d'un DDE USB > paramétré en GUID (disque) et JHFS+ (volume) pour permettre le boot > et dont le volume ait une taille suffisante pour recevoir l'ensemble des données du volume FusionDrive de ton Fusion Drive.

Pour mesurer la taille de ces données > démarré sur ce volume FusionDrive > passe la commande informative :
Bloc de code:
df -H /
(mets le H en majuscule)

  • qui appelle l'utilitaire df (display_free_space : afficher l'espace libre) > avec l'option -H (retourner des mesures Human readable : humainement lisibles = en multiples du byte) > et la cible / (point de montage du volume de l'OS démarré)
  • tu vas obtenir une double ligne affichant les intitulés des menus et en-dessous la mesure des espaces : total > occupé > libre pour le volume FusionDrive

=> tu n'as qu'à poster ce tableau ici (dans un fenêtre de code pour garder la mise en forme).
 
Oui c'est bien ce que je pensais, quelle plaie ce Fusion Drive!

Alors voici le résultat de la commande :
Bloc de code:
Filesystem   Size   Used  Avail Capacity iused      ifree %iused  Mounted on
/dev/disk2   3.1T   1.0T   2.1T    34% 2088507 4292878772    0%   /

Autrement il faut savoir que j'ai fais une sauvegarde de toutes mes données personnelles sur un DDE, qui est maintenant plein (1To). j'ai un autre disque externe de 500Go que je peux utiliser, mais il ne me permettra pas à priori de faire un clone de mon disque actuel de 1To.

Merci encore pour ton aide
 
Tu as 1 To de données.

Sur ton DDE de 1 To également  --> en quoi consiste ta sauvegarde : clone de tes données avec l'OS = sauvegarde démarrable ? - ou copie de ton dossier de compte personnel seul ?
 
Ce qui serait possible est le procédé suivant :

  • attacher les 2 DDE en USB à l'iMac > les solidariser en mode Fusion Drive (procédé impliquant nécessairement l'effacement des données des 2 disques) > ce qui exportera un volume utile d'une taille de 1,5 To appelé (supposons) Clone.
  • cloner (avec un logiciel comme «Carbon Copy Cloner» - démo gratuite un mois) les 1 To de données du volume FusionDrive dans Clone (qui sera démarrable - l'OS ayant été cloné)
  • démarrer sur Clone > supprimer / recréer le Fusion Drive interne > ce qui va remonter un volume FusionDrive vide.
  • cloner à rebours le volume Clone dans FusionDrive (qui sera démarrable)
  • démarrer sur FusionDrive > télécharger un installateur du même OS que celui de FusionDrive et l'appliquer à ce volume : c'est le seul procédé permettant de créer une Recovery HD à sa place (en-dessous de la bande CoreStorage du HDD) lorsque le volume de l'OS dépend d'un Fusion Drive.

[Tu noteras que ce procédé amène à un moment donné la coexistence de 2 Fusion Drives : un externe et un interne. Distribution supportée logiciellement.]
 
Je comprends la logique, mais ne serait-il pas plus simple de se passer de la phase de clonage? Déplacer mes fichiers perso sur un système "neutre" (vide de données personnelles) ne me pose pas de problème. Est-il possible de supprimer/recréer le Fusion Drive interne puis d'installer un système pour enfin replacer à la main mes fichiers persos?

Pour tout dire je n'ai jamais cloné de disque sur mac, et l'idée de faire cela sur 2 disque externe USB m'inquiete un peu vu les problèmes avec bootcamp que je viens d'avoir.

Maintenant si le clonage est le seul moyen, je suis tout ouïe :)
 
Ce que je proposais > c'était pour t'éviter la peine de récupérer tes données à la main. Évidemment > une clean install suivie d'une récupération manuelle est plus simple.

La question est : les applications tierces que tu as pu ajouter vont sauter avec le Fusion Drive. Est-ce que tu envisages aussi de les ré-installer à la main ? - sans compter qu'il te faudra aussi remettre les identifiants de licences > et refaire tes réglages de préférences.
 
Tu pourrais télécharger un installateur de «Sierra» depuis l'AppSore > installer un OS «Sierra» dans un volume de ton DDE de 500 Go > copier l'installateur dans les Applications de ce volume > démarrer dessus > supprimer / recréer le Fusion Drive > utiliser l'installateur des Applications du volume externe pour installer «Sierra» dans le volume du Fusion Drive.

Si ton DDE de 500 Go a déjà des données dans son volume > mais offre suffisamment d'espace libre > il est possible de re-partitionner non destructivement ce volume pour en créer un secondaire afin de faire l'opération décrite.

Qu'est-ce que tu en penses ?
 
OK donc je vais :
  1. Installer Sierra sur mon DDE de 500Go (j'ai déjà une clef USB de prête avec l'installateur de Sierra)
  2. Copier dans le dossier application de ce DDE l'installateur de Sierra (je ne comprends pas bien pourquoi à vrai dire)
  3. Démarrer sur le DDE, et supprimer/recréer le fusion drive (là j'ai besoin de ton aide)
  4. Installer Sierra sur le Fusion Drive fraichement recréé.
Je m'attèle dès que possible aux 2 premiers points, si je peux dès ce soir.

La suite des aventures au prochain épisode
 
Si tu as une clé USB démarrable avec l'installateur de «Sierra» > inutile de t'embarrasser de complications !

Attache ta clé au Mac > démarre sur la clé et fais signe que tu es prêt : je te passe alors les commandes ad hoc.
 
Hé ! je ne suis pas du soir mais du matin : je n'étais donc plus en ligne.

Si je t'avais proposé de créer un 2è volume sur ton DDE et d'y installer «Sierra» - c'est parce que, personnellement, j'aime mieux manœuvrer dans une vraie session de macOS que dans une Recovery. Mais si tu as une clé d'install > tu peux donc tout faire à partir d'elle.

Je peux donc te proposer ici un petit topo de la manœuvre d'ensemble - au cas où nous ne serions pas synchronisés.


- a) tu démarres sur ta clé d'install > tu vas à la barre supérieure de menus de l'écran > menu Utilitaires > tu lances le «Terminal».

----------

- b) tu passes la commande :
Bloc de code:
diskutil cs list
qui te remet sous les yeux le tableau d'ensemble du CoreStorage Fusion Drive. Dans le haut du tableau > tu avises à droite de la mention : Logical Volume Group l'UUID : 33626D57-3C85-4F9F-AEBD-467B31CE4B4F --> tu le sélectionnes au pointeur et par ⌘C tu le copies dans le presse-papier.

----------

- c) tu passes la commande :
Bloc de code:
diskutil coreStorage deleteLVG 33626D57-3C85-4F9F-AEBD-467B31CE4B4F
(en respectant les espaces et en collant par ⌘V l'UUID du presse-papier 33626D57-3C85-4F9F-AEBD-467B31CE4B4F tout à la fin de la commande => le CoreStorage Fusion Drive va être supprimé > et les 2 disques (SSD & HDD) dé-solisarisés.

----------

- d) tu passes la commande :
Bloc de code:
diskutil list
qui te remet sous les yeux le tableau des disques actualisé. Tu t'aperçois que chacun des 2 disques (SSD & HDD) porte un volume nommé Untitled. Je vais supposer ici que le disk0 = le SDD et le disk1 = le HDD. Si c'était l'inverse > tu inverserais les n° dans mes commandes ci-dessous.

----------

- e) tu passes la commande :
Bloc de code:
diskutil partitionDisk disk0 gpt jhfs+ SSD 100%
(tu mets disk1 si c'est le n° du SSD de 121 Go dans le tableau - les n° de disques n'étant pas inamovibles, mais reflétant des rangs dans le processus d'attachement des disques au Système démarré - rangs susceptibles de varier d'un démarrage à un autre) --> ce qui efface / recrée la table de partition du SSD et remonte un volume intitulé SSD.

----------

- f) tu passes la commande :
Bloc de code:
diskutil partitionDisk disk1 gpt jhfs+ HDD 100%
(tu mets disk0 si c'est le n° du HDD de 3 To dans le tableau) --> ce qui efface / recrée la table de partition du HDD et remonte un volume intitulé HDD.

----------

- g) tu passes la commande :
Bloc de code:
diskutil coreStorage createLVG Fusion disk0s2 disk1s2
--> ce qui crée un Physical Volume sur chacune des partitions principales des disques (SSD & HDD) : la disk0s2 et la disk1s2 > et génére un Conteneur Logical Volume Group qui les importe tous les 2 comme magasins de stockage physique.

----------

- h) À la fin de l'affichage de l'opération > tu vois inscrit dans la fenêtre du «Terminal» l'UUID de ce nouveau Logical Volume Group, du genre : XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX => tu le sélectionnes au pointeur et par ⌘C tu le copies dans le presse-papier.

----------

- i) Tu passes la commande :
Bloc de code:
diskutil coreStorage createLV XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX jhfs+ FusionDrive 100%
(tu respectes bien les espaces libres et par ⌘V tu colles l'UUID du presse-papier exactement à la place de mon XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX dans ce modèle de commande) --> ce qui crée une Logical Volume Family (instance intermédiaire de paramétrage) > un Logical Volume (disque virtuel miroir des 2 Physical Volumes) > un système de fichiers JHFS+ ancré au dev node de ce Logical Volume > un volume standard monté sur cet espace virtuel sous l'intitulé de FusionDrive (ton choix d'origine).

----------​

=> si tu n'a obtenu nulle part de message d'erreur > tu disposes désormais d'un nouveau Fusion Drive complet et opérationnel > remontant un volume terminal FusionDrive. Tu peux quitter le «Terminal» et si tu veux vérifier cet état des lieux dans l'«Utilitaire de Disque». Il ne te reste plus qu'à déclencher l'option : "Ré-installer macOS" à destination du volume FusionDrive et tu pourras à la fin paramétrer le Mac > créer un compte d'utilisateur à ton nom > et ouvrir une session.

Tu pourras alors étrenner ton nouveau dispositif sans faute en récupérant tes données a la mano et en ré-installant tes applications ; puis par un re-partitionnement créer une partition BOOTCAMP à l'aide de l'«Assistant BootCamp» > et installer «Windows» dans la foulée. Tout cela fait > tu peux poster ici les tableaux retournés par les 2 commandes :
Bloc de code:
diskutil list
diskutil cs list
passées dans le «Terminal» de l'OS - histoire de confirmer l'état des lieux.
 
Dernière édition par un modérateur: