I am interested in dual-booting a Linux distro (probably Ubuntu) on my 2019 MacBook Pro. Ideally, I would have a shared data partition so that I could access my documents from both OSes. Does anyone have suggestions on the best way to accomplish this?
I would say create an NTFS partition and use that. NTFS on Linux has been pretty reliable with the new in-kernel NTFS3 driver, especially since recent kernels. And on macOS, you can use the Tuxera NTFS driver, which is also pretty reliable (FWIW, I’ve been using this for many years now without any issues).
Now here are some alternative options, and why NOT to use them:
-
exFAT: While this should work out-of-the-box on both Linux and macOS, unfortunately it’s not a reliable FS and not meant for usage on internal drives. exFAT lacks several data integrity features found on modern filesystems, such as journaling, data checksums, atomic writes etc. Basically you can’t trust exFAT with your data.
-
APFS: There’s an experimental driver for Linux, but it’s considered quite experimental, so I wouldn’t recommend it. Paragon also makes a paid APFS driver for Linux, but I don’t have any experience with it. Personally, given how new APFS is, I wouldn’t recommend using Paragon’s driver. NTFS on the other hand has been around for decades, is far more widely used and battle-tested, and is well understood by third-party driver developers.
-
HFS+: Support on Linux is mediocre at best. In theory, it’s supported, but filesystem checking is essentially nonexistent without a lot of manual work, and it has issues sometimes if the filesystem was not cleanly shut down. Performance is also not particularly great, and the driver is not widely used with means it’s more likely to have undiscovered bugs.
Alternatively, use a Linux-native file system like ext4 or btrfs, and expose it to macOS via a bare-bones Linux guest VM using UTM or similar.
Kludgy, yes. But NTFS support is kind of shit on both Mac AND Linux.
Personally I use exFAT for such tasks, but I’m not storing anything important on those drives to begin with.
I’ve had success with an NTFS partition, but I’ve pretty much just used it like a buffer. If I want to move something from one OS to the other, in it goes, reboot, out it comes. Never lost anything that way. This is Ubuntu and MacOS on an ancient MacBook Air.
-
Dual booting is the easy part, but exposing the Linux filesystem is the hard part.
I personally would just run Linux as a VM inside macOS using Parallels or Oracle Virtualbox. It will be alot easier and more reliable.
Plus the hardware will work properly whereas with Linux on bare metal Mac, some hardware doesn’t work at all like thunderbolt, SD cards and webcam.
Yes, I do think you have a point. That’s what I’ve done for several years, but I think it’s time…