10.14 Mojave Fusion Drive avec deux SSD

axeljsannino

Membre confirmé
18 Juillet 2019
33
6
28
Bonjour à tous,

Tout à commencer avec une idée saugrenue, mon iMac 5K (fin 2015) qui me sers essentiellement pour du montage video sur Davinci Résolve était un peu à la traine en ce qui s’agit du montage. Doté d’un Fusion Drive avec 128Go et d’un HDD de 2To, je me suis dit que remplacer ce fameux HDD par un SSD pouvait ne faire du bien.

Après l’opération à cœur ouvert effectué je me suis rendu compte que j’avais installé Mojave sur ce nouveau SSD de 2To mais que par conséquence j’ai laissé de coté le SSD de 128Go.

Voulant rectifier mon erreur je me mets en quête sur divers forums d’infos concernant la possibilité de faire un Fusion Drive avec mes deux SSD, le 128Go étant par défaut plus rapide. J’ai lu ici et là qu’en vitesse d’écriture il pouvait atteindre les 800Mo/s contrairement à mon SSD de 2To qui plafonne au alentours des 500Mo/s.

Après une demi journée passé sur le Terminal à formater les deux SSD en HFS+ j’ai pu créer le volume Fusion Drive et installer Mojave dessus qui par ailleurs m’a converti nos deux camarades en APFS. Mais alors voila apres test de vitesse (si tenté que cela soit fiable) je me retrouve avec chez Blackmagic Disk Speed à 150Mo/s en écriture. Avec un autre logiciel à 400Mo/s.

Cela me parait bien lent est-ce normal? Serait-ce une sorte de moyenne entre les deux SSD qui ne reflèterait pas du tout la vitesse de l’un et de l’autre? Ou bien est-je merdé quelque part?

Merci beaucoup pour votre aide
 
Voici mon dikutil list j'ai faire à un autre soucis qui me confirme peut être une erreur de ma part lors de la création du Fusion Drive entre les deux SSD. Lorsque je veux faire une partition Boot Camp, l'assistant (à jour) ne prend en considération que mon SSD de 120Go comme si il ne reconnaissait pas le Fusion Drive même si le volume existe à part entière en un seul disque. Quelqu'un à une idée du problème ?

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 disk2         121.1 GB   disk0s2

/dev/disk1 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *2.0 TB     disk1
   1:                        EFI EFI                     209.7 MB   disk1s1
   2:                 Apple_APFS Container disk2         2.0 TB     disk1s2

/dev/disk2 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +2.1 TB     disk2
                                 Physical Stores disk0s2, disk1s2
   1:                APFS Volume Fusion Drive            118.8 GB   disk2s1
   2:                APFS Volume Preboot                 48.7 MB    disk2s2
   3:                APFS Volume Recovery                509.7 MB   disk2s3
   4:                APFS Volume VM                      3.2 GB     disk2s4
 
Il semblerait d'ailleurs si je lis bien le tableau que le volume Fusion Drive ne fait que 120 Go. Autrement dit je ne sais pas où sont passé les 2To
Merci d'avance
 
Bonjour Axel

Formellement parlant > ton Fusion Drive de type apfs est valide -->

- les 2 partitions principales disk0s2 (121 Go) & disk1s2 (2 To) des 2 disques => recèlent des magasins de stockage apfs dits = "Physical Stores". Les 2 Physical Stores sont importés dans un unique Conteneur disk2 > qui déploie un espace-disque virtuel portant 4 volumes simultanément (le nouveau paradigme de l'apfs) : le volume de démarrage Fusion Drive > et ses 3 auxiliaires = Preboot (prédémarrage) > Recovery (secours) > VM (= Virtual Memory : archivage de la RAM et du swap).​

- si le Conteneur apfs définit la capacité-disque totale utilisable (elle est de 2,1 To en ce qui te concerne) > chaque volume relevant de ce Conteneur n'a que la taille actuelle de ses données (ils ont en partage commun l'espace disponible global du Conteneur). Ton volume de démarrage Fusion Drive a actuellement une occupation de 118,8 Go de blocs du Conteneur de 2,1 To : tu as donc de la marge d'espace disponible dans le Conteneur pour son expansion.​

----------

Lorsqu'un utilisateur crée un Fusion Drive de type apfs via le terminal > il a 2 possibilités :

- a) soit d'utiliser le verbe apfs : create dans une commande du type -->
Bloc de code:
diskutil ap create disk0s2 disk1s2 Fusion Drive

  • ce qui est une commande disons "synthétique" > qui fait que diskutil va injecter 2 magasins Physical Stores dans les 2 partitons désignées > les importer dans un Conteneur apfs unique > puis ajouter dans ce Conteneur un volume unique du nom de Fusion Drive (destiné à l'installation). Dans une création de ce genre > l'initiative entière est laissée à diskutil --> d'interpréter notamment quel magasin (dans quelle partition de disque) a un rôle efficace "principal" (support le plus rapide de type SSD) > et quel magasin (dans quelle autre partition de disque) a un rôle efficace "secondaire" (support le plus lent de type HDD). Les algorithmes d'optimisation du Fusion Drive se modèlent sur ces assignations de rôles (qui sont des flags ou attributs fixés aux magasins des 2 partitions)

- b) soit d'utiliser le verbe apfs : createContainer dans une commande du type -->
Bloc de code:
diskutil ap createContainer -main disk0s2 -secondary disk1s2

  • ce qui est une commande disons "fondatrice" > qui fait que diskutil va injecter 2 magasins Physical Stores dans les 2 partitions désignées > les importer dans un Conteneur apfs unique > mais n'ajouter aucun volume d'un nom donné dans le Conteneur comme destination d'une installation. À la place > les 2 options -main (principal) et -secondary (secondaire) --> assignent volontairement à chaque magasin dans chaque partition le rôle efficace ("performance role") souhaité par l'utilisateur > et leur associe donc les flags correspondants. Le Conteneur créé est alors une structure fontamentale vide encore de volumes.
----------
 
  • J’aime
Réactions: Vincenthub
Dans ton cas (d'après ta description) --> tu as opéré d'après un 3è schéma :

- c) tu as créé d'abord un Fusion Drive classique dans le type CoreStorage par 2 commandes du genre :
Bloc de code:
diskutil coreStorage createLVG Fusion disk0s2 disk1s2

  • qui a généré un Conteneur CoreStorage appelé "Logical Volume Group" et important les 2 magasins "Physical Volumes" inscrits dans les partitions. Un UUID de 32 caractères alpha-numériques de type : XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX est alors affiché en sortie de commande dans le terminal. Ce qui permet de finaliser la création du Fusion Drive CoreStorage par la commande :
Bloc de code:
diskutil coreStorage createLV XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX jhfs+ "Fusion Drive" 100%

  • qui exporte à partir du Conteneur CoreStorage un espace-disque virtuel commun nommé Logical Volume > sur lequel se trouve inscrit un système de fichiers jhfs+ > formateur d'un volume Fusion Drive. Dans cette création à 2 étapes d'un Fusion Drive CoreStorage > aucune liberté de choix d'un rôle efficace attribué à un magasin Physical Volume ou à l'autre --> n'est laissée à l'utilisateur. C'est diskutil qui interprète automatiquement les rôles efficaces : principal et secondaire (en terme de performance ou vitesse disque) de chaque magasin.
  • c'est l'installation de Mojave qui a converti le Fusion Drive CoreStorage en Fusion Drive apfs. Cette conversion n'a fait que récupérer les flags "principal" & "secondaire" affectés aux magasins des partitions par la création première du Fusion Drive CoreStorage. Ces flags déterminent > en cas de partitionnement du Conteneur du Fusion Drive --> quelle est la partition "donneuse d'espace" (c'est toujours celle dont le magasin est marqué par le rôle efficace "secondaire" (support le plus lent de type HDD et supposé aussi le plus vaste). Dans ton cas > il semble que l'assignation des rôles effiaces aux magasins des partitions lors que la création du Fusion Drive CoreStorage --> ait pris entièrement les choses à rebours > en assignant au magasin du petit SSD natif le rôle efficace "secondaire" et au magasin du grand SSD ajouté le rôle efficace "principal". C'est la seule "raison logique" qui fasse qu'un repartitionnement chez toi affecte la partition du petit SDD au lieu comme attendu du grand SSD.
----------
 
Dernière édition par un modérateur:
En résumé : ton actuel Fusion Drive apfs est hérité par conversion d'un Fusion Drive CoreStorage créé antérieurement. Cet héritage a récupéré des rôles efficaces : "principal" vs "secondaire" des magasins de stockage des partitions > qui ont été automatiquent attribués "à rebours" des attentes à l'origine : le petit magasin ayant le flag "secondaire" et le grand magasin le flag "principal". Ces flags (ou attributs des rôles efficaces) > ne sont pas manipulables a posteriori. C'est a priori qu'il faut en décider > uniquement si l'on effectue une création "fondatrice" d'un Fusion Drive de type apfs (aucun des autres cas de figures de génération d'un Fusion Drive : CoreStorage ou apfs "synthétique" => ne permettant un choix du "performance role" par l'utilisateur mais relevant d'un automatisme de diskutil).

- tu en conclus avec moi --> qu'il faut supprimer ton actuel Fusion Drive apfs > puis effectuer une recréation "fondatrice" de Conteneur vide (avec attribution volontaire des rôles efficaces) > l'addition d'un volume installable > dans lequel tu installeras Mojave. Pour qu'à la fin de l'installation > tu puisses choisir de récupérer les données d'un volume par l'Assistant de migration --> il faut d'abord que tu fasses une sauvegarde du contenu (119 Go) de ton volume de démarrage Fusion Drive (clone ou TM).​
 
Dernière édition par un modérateur:
Merci énormément macomaniac pour cette réponse très très claire. En effet la création du Fusion Drive que j'ai faite à partir d'un tutoriel s'est faite en deux temps comme indiqué dans ta troisième hypothèse avec un un UUID de 32 caractères alpha-numériques.
je comprend mieux pourquoi les test de vitesse sont bas et pourquoi lors de l'utilisation de Boot Camp ne m'est proposé que sur le disque de 120 Go.

Aucun soucis concernant les données je n'ai encore rien installé et l'intérêt de ce nouveau Fusion Drive était aussi de faire une installation propre.
Du coup pour être bien sur de ne pas récidiver mon erreur, je peux à partir d'une clé USB bootable accéder au Terminal je dois d'abord casser le fusion Drive actuel ? Puis dans un second temps à l'aide de la commande:
Bloc de code:
diskutil ap createContainer -main disk0s2 -secondary disk1s2
recréer le Fusion Drive qui cette fois ci va formater et attribuer le rôle principal à disk0 soit mon SSD de 120Go plus rapide et le secondaire a disk1 qui n'est autre que mon SSD de 2To.

Puis faire une installation Mojave sur ce nouveau disque Fusion Drive.

Est ce bien cela ? Ou il me manque des étapes ?
Merci encore
 
Autre question la commande cité plus haut suffit-elle à elle seule à créer le Fusion Drive ?

EDIT: A priori j’ai pu casser le Fusion Drive avec la commande
Bloc de code:
diskutil apfs deletecontainer disk2
Qui désignait mon disque Fusion Drive
En revanche maintenant je me retrouve avec un seul gros conteneur réunissant le deux disques mais aucun Volumes à d’intérieur donc impossible d’installer macOS. Je suis bloqué.

Merci beaucoup
 
Dernière édition:
Passe la commande :
Bloc de code:
diskutil list

  • et poste le tableau de la configuration des disques --> que je voie où tu en es.
 
Alors je suis sur le Terminal via une clé bootable du coup pas moyen de copier coller mais je t’ai fais une photo.
A priori la creation du Container Fusion Drive à bien réussi mais aucun volume à l’interieur

Encore merci pour le coup de main
 

Fichiers joints

  • 64AC6004-3D4F-4683-AF26-74B38BC3BBE2.jpeg
    64AC6004-3D4F-4683-AF26-74B38BC3BBE2.jpeg
    684,7 KB · Affichages: 413
Pas de problèmes : lorsque l'utilisateur opte pour la création d'un Fusion Drive apfs par une commande "fondatrice" -->

- il crée un Conteneur apfs commun > vide encore de volume installable. Tu es dans un cas de figure qui ressemble à celui du CoreStorage > où après la commande fondatrice du Conteneur = "Groupe de Volumes Logiques" --> il faut une seconde commande qui défnisse un volume utilisable dans le Conteneur.​

=> veux-tu toujours Fusion Drive comme nom du volume apfs à créer ?
 
D’accord tout va bien dans ce cas :)
Non ça m’est égale on peut l’appeler “Macintosh SSD” par exemple j’avais opté pour “Fusion drive” par rapport au tutoriel que j’avais suivi.
 
Alors voici la commande à passer :
Bloc de code:
diskutil ap addVolume disk2 apfs "Macintosh HD"

  • mets "Macintosh HD" avec l'encadrement des "" (ils servent à inclure l'espace libre médian dans la définition de l'intitulé > au lieu que l'espace libre définissent 2 termes séparés => ce qui casserait la commande)
  • la commande ajoute un volume intitulé Macintosh HD dans le Conteneur du Fusion Drive

Poste l'affichage retourné.
 
Tu as fait un lapsus calami vers la fin de la commande > en tapant pfs au lieu de apfs -->

- la commande s'analyse ainsi : appel à diskutil (utilitaire de la commande) > avec la spécification ap (abrégé de apfs) > verbe addVolume (pour définir l'action de créer un volume) > désignation de disk2 (comme index de disque du Conteneur où créer le volume) > désignation de apfs (comme personnalité du système de fichiers générateur du volume) > intitulé "Macintosh HD" (pour indiquer le nom du volume).​

Donc repasse la commande :
Bloc de code:
diskutil ap addVolume disk2 apfs "Macintosh HD"

  • et poste le retour.
 
J'ai peur qu'en tapant 2 fois la commande --> tu n'aies créé 2 volumes homonymes : Macintosh HD dans le même Conteneur (comme quoi : le plus est l'ennemi du mieux :hilarious:).

Passe la commande :
Bloc de code:
diskutil list

  • et poste le tableau des disques qu'on voie ça (tu peux ne photographier que le haut du tableau montrant le Conteneur apfs - les petites images-disques de la RAM - auxiliaires de l'OS de secours démarré --> n'ont pas d'intérêt).
 
  • J’aime
Réactions: litobar71