How do I 'own' my own hfsplus external drive?

The Linux kernel includes the hfsplus module for mounting HFS+ filesystems read-write. HFS+ fsck and mkfs have been ported to Linux and are part of the hfsprogs package.

In 2009, these drivers were diagnosed to be corrupting HFS+ drives with a capacity greater than 2 TB. Consequently, Linux distributions such as Debian and Ubuntu stopped allowing mounting of HFS+ drives or partitions greater than 2 TB. As of February 2011, work is in progress to lift this restriction.

Under Linux’s current HFS+ driver, journaling must be disabled in order to write data safely onto an HFS+ partition. Provided the partition isn’t being used by Apple’s Time Machine software, journaling can be disabled under macOS: Using Disk Utility in OS X Yosemite, the user may hold Alt/Option and click “Disable Journaling” on the File menu, having first selected a mounted partition.

An HFS+ partition with journaling enabled may be forcibly mounted with write access under Linux, but this is unsupported and unwise.

A Google Summer of Code project to implement write support to journaled HFS+ was accepted by the Linux Foundation in 2011 but was not completed at that time and is still a work in progress. Progress and improvements to the HFS+ driver, including some updates to journaling support, are posted on the linux-fsdevel mailing list from time to time.

As of July 2011, Paragon Software Group provided kernel drivers that allow full read-write access to HFS+ journaled volumes. The product is a proprietary implementation of HFS+ based on Paragon’s proprietary UFSD library. There are both free and paid editions of the driver, and they include a utility for checking and repairing HFS+ volumes. According to the online documentation (free version or the paid edition), both the free edition and the paid edition currently support Linux kernels from 2.6.36 up to 4.12.x. Ubuntu, Debian, Fedora, OpenSUSE and CentOS are the only Linux distributions officially supported.

There is an hfsutils package in the AUR. Perhaps this can be used for disabling the journal. :arrow_down:

pamac build hfsutils
1 Like