Skip to content

Comment on NFS > FUSE: Why We Built Our Own NFS Server in Rust

Comments

So it’s a local file system driver accessed via NFS? Is that right? I get that NFS is on one side, but what’s on the other?

FUSE is used to present a file system interface of something that isn’t a file system. E.g. present an LDAP directory as a file system.

Writing FUSE drivers is pretty frustrating, though, and not well supported by all OSs.

My takeaway is that this project discards FUSE in favour of making an NFS server that can be easily extended to do the same thing: present non-file system systems as mountable nfs remote file systems.

It’s a neat idea, and does avoid any extra kernel drivers, etc. A safer abstraction at the cost of adding a network stack and NFS’s sometimes wonky effects (especially with hard mounts).

ylowOP

This NFS Server on one side, and the OS's builtin NFS client on the other.

It appears as a network drive on all major operating systems and can be accessed as any other local filesystem (through kernel syscalls).

AboutSource Built by g1lg1l

Hackerly is an independent reader for Hacker News, built on the public HN API. Not affiliated with Y Combinator.