4 ms·
I did not expect Plan 9, the Linux kernel, and Rust to intersect like that! Would adding this module mean that I could finally mount a 9P filesystem on my Linu
by ainar-g 4y ago
I did not expect Plan 9, the Linux kernel, and Rust to intersect like that! Would adding this module mean that I could finally mount a 9P filesystem on my Linux machine without the need for third-party software and FUSE?
- remexre 4y agoYou already could, actually! zgrep CONFIG_9P_FS /proc/config.gz to see if your kernel's configured for it, modprobe 9p if it's built as a module. The article's talking about doing an in-kernel 9P _server_ instead; I think this is just so that it can act as an abstraction of an SMB server, because you ought to be able to do a 9P server in userspace with no loss of capabilities...
- ainar-g 4y ago/proc/config.gz seems to be unavailable to Debian 11, at least by default, but "modinfo 9p" does show the module. Thanks for the clarification!
- rascul 4y ago> /proc/config.gz seems to be unavailable to Debian 11 For clarification: > /proc/config.gz isn't available in Debian, because the config is provided in /boot/config-*, no need for the in-memory variant https://wiki.debian.org/KernelFAQ#line-46 https://wiki.debian.org/KernelFAQ#line-46
- MisterTea 4y ago> I think this is just so that it can act as an abstraction of an SMB server, because you ought to be able to do a 9P server in userspace with no loss of capabilities... Correct, 9p file servers can live in user-space. At some point you have to mount the fs which on lunix/unix is done in-kernel. In plan 9 the kernel is just a VFS that lets you build arbitrary file trees from collections of mounts and binds. On-disk file systems like FAT and EXT are served via user-space programs which open the disk partition (served as a file by sd(3)) and translates the 9p messages to EXT, FAT, etc operations. File servers can also provide synthetic files, e.g. an arduino can serve its io bits and/or internal variables over 9p (ninepea on github written by echoine.) Since its a VFS all the way down and data moves via two way pipes mapped to fd's you can boot and pull root from ANY 9p server. Don't care if its CWFS, HJFS, FAT, EXT, SMB, SSHFS, NFS, etc. Kernel don't care as long as it sees files through a 9p connection over whatever 2-way medium you are using including rs232. You cant touch that level of flexibility with other operating systems.