Edouard Klein <e...@rdklein.fr> writes:

> I'm about to write my own 9P2000.L fuse wrapper, but before I dive into
> that, I thought I'd ask here: has anybody ever mounted a 9P filesystem
> from inside a Linux user namespace, or even better, a full blown
> container ?

Well, all my containers are in the recycling bin by my back door.  But I
do regularly mount and use 9P filesystems on Linux, using either the
"9p" filesystem in the Linux kernel or the 9pfuse FUSE client, depending
on the circumstances.

I modified 9pfuse to support Unix file types (block/character devices,
symlinks, etc.)  Those modifications allow storage/retrieval of vac
archives containing Unix filesystems.  IIRC, I submitted those changes
as a patch to plan9port about 10 years ago.

There are problems with 9pfuse, however.  9pfuse is slow and leaks
memory.  And, due to restrictions in the FUSE protocol, file ownership
is limited to a single user (the user mounting the export).  GNU find
(even with invoked with -noleaf) also has problems traversing
directories served by 9pfuse.  I haven't bothered porting my mods to
9pfs, though it may well be worth the effort.

I've been toying with the idea of writing a 9P2000 translation server to
translate between my extensions and 9p2000.u.  That way, a single 9P2000
filesystem could be mounted (presumably by root) and used by multiple
users.  The problem with the Linux kernel's 9p filesystem is that it
doesn't have any sensible way to map 9P2000 user/group names to Linux
UID/GIDs.  That seems to be the big stumbling block.

Wait, 9P2000.L?  What's that?

Inferno's "export" works OK with both 9pfuse and Linux's 9p fs driver.
But I recall there being other 9P2000 file servers out there.

------------------------------------------
9fans: 9fans
Permalink: 
https://9fans.topicbox.com/groups/9fans/Tb5d039f675c54046-Md105fe9cdb66627c43229d81
Delivery options: https://9fans.topicbox.com/groups/9fans/subscription

Reply via email to