0

For fun, I've bought a USB thumbdrive from a reputable brand, and was able to build an APFS fusion drive (with the internal SSD as the main, and the USB thumbdrive as the secondary) on my 2018 Mac Mini, which came with Mojave, as follows:

  • Reboot into Mojave's recovery
  • In Startup Security Utility, choose "Medium Security" and choose "Allow booting from external or removable media"
  • In Terminal, list all disks

$ diskutil list | head -40

  • Then delete the APFS volume:

$ diskutil apfs deleteContainer disk0s2

  • Then create a Core Storage Fusion Drive:
$ diskutil cs create "Fusion LVG" disk0 disk4
$ diskutil cs createVolume <identifier> jhfs+ "Fusion" 100%
  • Exit Terminal and go to Disk Utility. Format the drive as APFS.
  • Reboot into internet recovery mode with Opt-Cmd-R and install Catalina.

The problem is as follows. The installation finishes correctly, and leaves you with a running system. However data gets corrupted when the fusion drive contains too much data to solely exist on the internal drive. I've checked this by copying one file multiple times and then checking the MD5 sum.

Why have I been able to create a fusion drive that actually corrupts data? Why did it go wrong?

  • 2
    I haven't tested this, so I'm not posting it as a bona fide answer, but you created an APFS container with drives that have a physical descriptor that may change - like when the USB drive gets disconnected and reconnected again. It's not like having internal drives (for a fusion drive) that will always be disk0 and disk1. – Allan May 2 at 17:50
  • @Allan but how to fix this? Under Linux, one can use udev rules to create named devices (such as /dev/mythumbdrive), or in /etc/fstab, link a physical descriptor to a device. But I don't know how to do this under macOS. – Bart Doe May 2 at 18:00
  • How to fix? Well, I haven't tested so I don't know (yet). But, you need to somehow ensure your disk identifier stays the same. – Allan May 2 at 18:01
  • I would have thought that changing identifiers would just render the whole volume 'broken', rather than cause corruption to individual files/blocks. – benwiggy May 3 at 9:22
  • @Allan I use an internal hard drive with an external ssd on my 2014 Mac mini as my boot drive. It always seems to locate the USB portion no matter what its physical descriptor is – Matthew Barclay Aug 17 at 23:54
1

This is a bad idea for lots of reasons. You're lucky that the Mac can boot from a Fusion drive that's half T2 and half external USB.

I suspect the T2 disk controller is at the root of the problem. Possibly because of its built-in encryption. Perhaps the Fusion magic moves encrypted blocks off the SSD without decrypting them?

Even if it did work, using a USB thumb drive is going to massively compromise the speed of the fast internal portion.

I don't think that 'expanding' the internal storage into a bigger logical volume, either with Fusion or RAID is going to be workable.

| improve this answer | |
  • 1
    I love this idea for learning or seeing how ridiculous of a setup you could get to boot in the first place. The speed and reliability compromise here boggles my mind. Take a T2 / custom SSD controller with super fast storage and drag it down with a boat anchor of a bus and external drive controller. It’s like putting a manure spreader on a Bugatti with a temporary hitch. – bmike May 2 at 18:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .