Il y a quelques jours, je testais le Seagate FireCuda Gaming Dock, qui combine un disque dur externe et un SSD en Thunderbolt, avec la même connexion. Et je me suis posé une question : et si je faisais un Fusion Drive ?
Le Fusion Drive, pour rappel, est une technologie Apple utilisée dans les iMac et les Mac mini, qui permet de combiner un SSD et un HDD. le SSD stocke l’OS et les données souvent utilisées, le reste est déplacé automatiquement sur le HDD. Pour l’utilisateur, c’est normalement transparent, il ne voit qu’un seul volume et le système s’occupe en arrière-plan des transferts. C’est plus efficace que les équivalents Windows, essentiellement parce que l’OS peut être placé directement dessus et que la gestion dépend directement de macOS et pas d’un pilote ou d’un logiciel ajouté.
Faire un Fusion Drive externe est souvent une mauvaise idée parce que les boîtiers qui offrent deux volumes (un SSD et un HDD) sont rares. Et le Fusion Drive, comme le RAID 0, n’apprécie pas qu’un des deux périphériques soit absent. S’il est donc possible de le faire en USB avec deux boîtiers externes, c’est dangereux. Avec le FireCuda Gaming Dock, et si vous le branchez en Thunderbolt 3, vous aurez le SSD et le HDD sur la même connexion, avec en bonus un SSD rapide.
En HFS
Il existe deux méthodes pour faire un Fusion Drive. La première, l’originale, passe par un partitionnement en GPT et Core Storage. Il faut sortir le Terminal, et c’est documenté chez Apple.
Première chose, un petit diskutil list
qui va liste les périphériques. Il faut noter les valeurs /dev/diskxx
du SSD et du HDD. Je vous conseille de vérifier deux fois. Pendant la rédaction de ce post, j’ai effacé un disque dur de sauvegarde.
La commande va créer un volume Core Storage avec le SSD et le HDD.
diskutil cs create FusionDrive /dev/disk11 /dev/disk12
Maintenant, il faut utiliser la commande diskutil cs list
et noter la valeur Logical Volume Group
(ici 61B206D1-5393-4644-B797-D8260F166959
).
Puis il faut créer un volume, en remplaçant logicalvolumegroup
par la valeur trouvée juste avant.
diskutil cs createVolume logicalvolumegroup jhfs+ FusionDrive 100%
Et voilà, vous avez obtenu un Fusion Drive externe. Dans mon cas, il faut 4,25 To : le disque dur de 4 To et le SSD NVMe de 256 Go.
En APFS
Depuis Mojave, il est possible de créer un volume Fusion Drive en APFS, le récent système de fichiers d’Apple. Ce n’est pas forcément une bonne idée, APFS est très lent avec les HDD, mais c’est possible et j’ai utilisé ce tutorial.
Il faut commencer de la même façon, avec un diskutil list
, et bien noter les identifiants.
Ensuite, la commande suivante va permettre de créer le Fusion Drive. Il faut bien indiquer le périphérique principal (le SSD) et le secondaire (le disque dur). Si vous voulez faire un Fusion Drive de SSD, placez le plus rapide en premier.
diskutil apfs createContainer -main /dev/disk10 -secondary /dev/disk11
Refaites un diskutil list
, et cherchez la valeur liée au volume synthesized
.
Avec cette valeur, il faut taper cette commande.
diskutil apfs addVolume /dev/disk13 APFS "Fusion Drive"
Et voilà, le volume Fusion Drive est monté.
Ça donne quoi ?
Dans les deux cas, le système va s’arranger pour écrire d’abord sur le SSD, puis sur le HDD. C’est un peu compliqué de montrer des benchmark, vu que l’OS fait sa popote interne : si vous faites un test d’écriture, il va d’abord mettre 4 Go en cache sur le SSD puis généralement passer sur le HDD, mais ensuite les données seront déplacée sur le SSD. Fusion Drive est vraiment pensé pour être utilisé pour l’OS, qui sera forcément sur le SSD, alors que le reste des données de l’utilisateur passeront du SSD au HDD (ou le contraire) en fonction de votre usage. L’intérêt avec le Gaming Dock est surtout de proposer un espace combiné qui sera rapide dans les usages du quotidien. Pour une sauvegarde Time Machine, ça peut notamment accélérer un peu les transferts au départ, et le système déplacera ensuite les données vers le HDD.
J’ai du faire encore plus tordu, un fusion drive de deux HDD (un LaCie avec deux disques).
Impossible de faire autrement pour avoir un volume crypté pour TimeMachine…
Et ça fonctionne bien depuis des années
Bonjour,
Il me semble que istat menu est en mesure de différencier les 2 volume d’un fusion drive. Ce qui permet notamment de voir les débits des 2 disques.
A vérifier car je n’utilise plus de fusion drive depuis quelques années.
Cordialement
Bonjour,
Article très interessant.
Le SSD de mon iMac late 2015 27 » vient de mourrir (DriveDx m’indique 0% de vie – wear_leveling_count).
J’avais pris l’option disque fusion : 128GB de SSD + 4TB = 3TB de disque fusion.
Est-ce que je me saigne pour changer le SSD interne (avec comme risque que le HDD y passe aussi un jour), ou est-ce qu’une solution comme celle-ci est viable ?
Merci.
Cordialement
Bonsoir,
DSi je peux me permettre, ça me paraît une très mauvaise idée de formater le tout en APFS :
la partie disque à plateau ramera probablement beaucoup plus rt le disque perdra aussi en longévité…
Sujets abondamment documentés en cherchant APSF disque à plateau ou Fusion Drive.
Par contre, en HFS+ pourquoi pas, à condition de ne pas installer un OS plus récent que High Sierra dessus :
à partir de Mojave ça bascule automatiquement et sans prévenir en APFS (sans choix possible) !