Two reasons not to use exFAT on your NAS

February 19, 2014, revised February 25, 2014 exFAT ext3 Linux NAS Raspberry PI

I’ve been using the exFAT file system on my Raspberry PI-powered NAS for awhile. I’ve chosen it because exFAT is the only “modern” filesystem that has read-write support in Windows, Linux and OS X. I use all three, so it was beneficial that the drive could be connected to any OS directly over a super-speed USB connection.

Now I’m switching to ext3, compatibility be damned, and here’s why.

Reason one: exFAT has no journaling

Journaling is a file system feature that prevents corruption after a power loss. Unless you use an uninterruptible power supply, you are guaranteed to have at least some corruption. And there is no chkdsk for Linux to fix the disk, there’s just fsck.exfat that only reports errors. So in order to repair the corruption and reclaim lost space, you need to connect the drive to a Windows PC. In my case I had about 20Gb space in lost clusters - 3% of the disk.

Reason two: exFAT-fuse drivers are buggy

For one example, exFAT-fuse can’t deal with filenames of a certain length. Any attempt to list the directory, even when removing it, causes the driver to fail critically with a Software caused connection abort and requires a remount. Again, you can rename or delete these files from a Windows PC.

Buy Me a Coffee at ko-fi.com