Exporting exFAT over NFS

We have a setup where we transfer data to and from clients on external USB hard drives. Yes, we should enter the 21st century, and, yes, we are an industry full of dinosaurs.

We have a setup where a server has the various external USB drivers attached, and then this server exports the data via NFS. We elected to run Rocky Linux 9 for this due to its native exFAT support.

But now the problem. It is well documented that exFAT can’t be exported over NFS:

https://forums.debian.net/viewtopic.php?t=154612
https://forums.raspberrypi.com/viewtopic.php?t=309384

Some people apparently have the solution, but as far as I can see, the patch was never accepted:

https://lwn.net/Articles/986256/

So. Anyone got any idea on whether this will be accepted in the kernel, and, anyone got any ideas for a workaround? Even read-only export via NFS would be nice.

You could try using a userspace NFS server - e.g. UNFS3

I haven’t used this in anger - but I just downloaded and built it on a Rocky 9 host - and managed to export a vFAT file system and mount the share on another host over NFS

I don’t think you can run it alongside the kernel nfs-server service - and it doesn’t appear to support all the export types in /etc/exports that can be used by nfs-server service (I had to use a separate exports file)

1 Like

I managed the same, and it appears to work. However, UNFS3 appears to be a somewhat dead project, and only support NFS v3, which is a little more troublesome to deal with as it requires portmapd and other services.

Also, we try to not have custom compiled software installed, but I guess sometimes one has to.

I’ve since stumbled upon GitHub - nfs-ganesha/nfs-ganesha: NFS-Ganesha is an NFSv3,v4,v4.1 fileserver that runs in user mode on most UNIX/Linux systems but haven’t had the resources to try it out yet.