Disk encryption format for external drives that works on both macos and linux
Is there any disk encryption scheme or format that can be used on both macos and linux?
Linux cannot read Apple's drive encryption format, and LUKS is not supported on MacOS.
I tried using VeraCrypt encrypted partitions in exFat format and it mounted successfully several times on MacOS but after a system update exFat mounting of veracrypt volumes does not work anymore (no issues on linux). Also, exFat does not seem to be a reliable file system, so I searched for alternatives, but apart from fat32, exFat and ntfs I don't see any viable alternatives for a reliable cross-platform file system.
All of these formats have issues: fat32 has file size limits, exfat veracrypt partitions are not mountable on macos, and ntfs is proprietary, linux support is not reliable, and veracrypt does not support it on linux/mac. hfsplus
works fine on mac but is read-only on linux. I hoped to be able to use ext3/ext4
with veracrypt encryption but even though I have fuse with ext4fuse
working in read-only mode working for unencrypted drives veracrypt is apparently not able to interoperate with fuse drivers.
Fat32 would be a great option since it works well with veracrypt on any OS, but the file size limitation and lack of symlinks is simply not acceptable.
Any other options I might have missed?
Solution 1:
Veracrypt+exFat works on Mac/Linux/Windows. The problems with mounting on MacOS were caused by configuring veracrypt encryption for the entire disk rather than a single partition. As a result the partition table was encrypted too. While this worked fine on linux it caused problems on MacOS. Creating a normal unencrypted partition table with an exFat partition and then encrypting that partition with veracrypt works fine cross-platform.
The downside is that Apple's exFat driver does not always cleanly unmount the partition which in turn unconditionally triggers exfatfsck
on the next mount attempt and that can take hours to finish for large size disks.