How to make your own (cheaper) Fusion Drive

Sunday, June 23, 2013 0 Comments A+ a-

A Fusion Drive gives you the best of two worlds: the high storage capacity of a traditional platter-based hard drive, and the speed boost of a solid-state drive, without you having to manually manage files. Apple offers the Fusion Drive as build-to-order options for the $799 Mac mini and the upcoming iMac, but if you are willing, able, and have the parts, you can make your own Fusion Drive.

To build a Fusion Drive, you need to use the Terminal. We're going to lay out the commands you need in a way that most can understand, and you don't need to enter a lot of them. However, a warning to anyone who has never used the Terminal: Working with the Terminal isn't as simple as a graphic interface, as spelling counts and you don't always have a nice list of commands. You also need to be using OS X 10.8.2 or later.

You need two drives to make a Fusion Drive, and if you want to get the speed boost, one should be an SSD. In our setup, we used a Hitachi 1TB 2.5-inch hard drive (the one that ships in a Mac mini) and a 240GB OWC Mercury Extreme Pro 6G SSD.

Apple chooses the drives they use based on extensive testing, which is why they recommend buying a Fusion Drive at the point of purchasing your Mac. Apple does not support users who have built their own Fusion Drive. (In our lab experiments, I was able to create a Fusion Drive with two flash thumb drives.)

If you have anything that you want to keep on either of the drives, now is the time to back it up: linking the drives with CoreStorage, the technology behind the Fusion Drive, will erase them completely. If you need help with backing up your data, check out our guide on how to back up your data with Time Machine or, if you don't need to save absolutely everything on your drive, our more generic guide on backing up your data.

The Disk Utility application (Application > Utilities > Disk Utility) doesn't support the management or creation of Fusion Drives in its graphical interface, and knowing Apple, it might not ever support it. To create the Fusion Drive, we'll use Disk Utility, but the command line version that comes with every Mac.

If you aren't going to include the drive you booted from in a Fusion Drive, you can open the Terminal app (Applications > Utilities > Terminal). This would be the case, say, if you're using a Mac Pro with multiple drive bays, since you can format them both externally.

If you want to include your current boot drive as part of the Fusion Drive, you're going to need to boot into recovery mode and run Terminal from there. The CoreStorage process used to "fuse" the drives also formats them, and you can't do that to a drive used as the boot drive. You can boot into recovery mode by holding Command+R when starting up your Mac, and open Terminal from there.

One last thing to note: If you're using a Mac currently in Apple's product line, such as the 13-inch Retina MacBook Pro or the new Mac mini, you can't use just any old install disc as a boot disc. Those machines require a special version of Mountain Lion that's not yet in the App Store. So in this circumstance, recovery mode is your best bet.

Once you have the Terminal open, you're ready to get to creating the Fusion Drive.

List the drives you system can see. Use the following command to list the drives attached to your system:

diskutil list

The drive mount points are labeled /dev/disk#. Make a note of the mount points for the disks you want to make into a Fusion Drive. In our example, /dev/disk0 is the boot disk, while /dev/disk1 and /dev/disk2 are the SSD and hard drive (respectively) that we want to put together as a Fusion Drive. An easy way to tell drives apart is by their size and their name. Make sure you don't confuse them, as the Terminal doesn't give much warning before wiping your drive.

Create a logical volume group. Let's create a CoreStorage logical volume group, the pool of data that will be made from the combined space of our physical drives. Use the following format of the diskutil command:

diskutil coreStorage create nameYourThing drive1 drive2

Going off the example using /dev/disk1 and /dev/disk2 as the drives to combine, I simply type:

diskutil coreStorage create myLogicalVolGroup /dev/disk1 /dev/disk2

When the process is done, your logical volume group should be completed and the command will finish by presenting you with a unique identifier for the group, which you should copy to your clipboard.

Create a logical volume. Now that we have a logical volume group, we can create the logical volume, what your Mac will recognize as a single drive. Use the following format of the diskutil command:

diskutil coreStorage createVolume lvgUUID type name size

lvgUUID is the unique identifier you copied from the previous step.

type use Journaled HFS+ (typed as jhfs+).

name can be whatever you want to name the drive (traditionally "Macintosh HD"). Make sure you use quotes if there's a space in the name.

size is how much of the "pool" that you want to make into a drive, using the following suffixes: B(ytes), S(512-byte-blocks), K(ilobytes), M(egabytes), G(igabytes), T(erabytes), P(etabytes), or (%) a percentage of the current size of the logical volume group.

That will create a volume named Macintosh HD, and fill the entire logical volume group (100%), or all the space on the two drives.

Enjoy!

Once that command is done, you have your Fusion Drive. You can now restore Mountain Lion back onto it, or do whatever you want. The only thing to remember is that they both need to be connected at the same time to work.