9mount(1)
π 9mount(1) β User commands π
okay bestie, sit down, we're learning 9mount today and honestly? it's giving essential. this is the family of lil tools that mount and unmount 9p filesystems β you got 9mount, you got 9bind, you got 9umount, they're a trio, a girl group, and they all live in the same page. periodt. πΈ
β¨ SYNOPSIS β¨
9mount [ insuvx ] [ -a SPEC ] [ -c CACHE ] [ -d DEBUG ] [ -m MSIZE ]
DIAL MOUNTPT
9bind OLD NEW
9umount MOUNTPT
π¦ DESCRIPTION π¦
so. 9mount mounts a 9p filesystem that's being served at DIAL onto MOUNTPT, and that's the whole vibe. two rules tho, no cap: MOUNTPT must be writable by you, and it must not be sticky. that's the vibe check and you gotta pass it. π
DIAL is a dial string, and it's gotta assume one of these forms (pick one, queen):
unix!SOCKET
tcp!HOST[!PORT]
virtio!CHANNEL
-
where, let me break it down fr fr:
- SOCKET β the name of a file representing a socket π§¦
- HOST β a hostname π
- PORT β a port number or a service name π’
- CHANNEL β a virtio channel name (currently ignored, she's just there for the aesthetic π)
-β means 9p messages should be read/written on stdin/stdout β
and 9mount has several options. here they are, all of them, every single one, because we do not skip. π
π OPTIONS π
-0β allow setuid files to be served (root only, so if you're not root, don't even try it bestie)-iβ mount the file system with your uid/gid π«Ά-nβ dry-run: print the mount command to stderr but don't actually mount anything. rehearsal, not the performance π-sβ single attach mode β all users accessing the mount point see the same filesystem (by default they'll each see a unique attach, iconique behaviour honestly)-uβ use the 9P2000.u extensions β¨-vβ allow device files to be served (root only again, sorry babe)-xβ exclusive access β other users cannot access the mount point π-aSPEC β SPEC determines which file tree to mount when attaching to file servers that export multiple trees π³-cCACHE β turns on caching using CACHE mode. supported modes areloose(suitable for exclusive read-only mounts),fscache, andmmapπΎ-dDEBUG β comma seperated list of channels for which to enable debug output. possible channels include:err,devel,9p,vfs,conv,mux,trans,alloc,fcallπ-mMSIZE β specifies the maximum length of a single 9p message in bytes. Must be less than or equal to8192for non-root users π
and then the other two members of the group chat:
9bindperforms a bind mount, making the tree visible at directory OLD also visible at mount point NEW πͺ9umountunmounts a 9p filesystem previously mounted by you (yes, by you specifically, it's personal) π«΅
πΈ ENVIRONMENT πΈ
$USERβ the uname to provide to the server. that's it, that's the whole section, she's lowkey chill π
π EXAMPLES π
here's where it gets fun, actual receipts:
9mount -i 'unix!/tmp/ns.'$USER'.:0/factotum' $HOME/n/factotum
mount p9p's factotum interface β the classic π§
9mount 'tcp!sources.cs.bell-labs.com' $HOME/n/sources
import plan 9's "sources" β vintage, iconic, no notes π
9mount -u -a/home/sqweek/mail 'tcp!wren!5640' $HOME/mail
import my maildir from my server(wren), being served by ufs π¬
9mount -i 'tcp!wren' $HOME/n/wren; 9bind $HOME/n/wren/home/sqweek/mail $HOME/mail
again importing my maildir, this time serving via u9fs β look at her, she's doing a chained command, main character energy fr fr π₯
π BUGS π
okay now the part where we hold hands and read the fine print, because these are real and you need to know them:
9mounttruncates user names and SPECs to 249 characters.9umountdoesn't know this, so you won't be able to unmount anything outside your home directory. But you probably never bother logging out if your user name is that long. π (she's read you to filth and she's right)9mountdoesn't update/etc/mtab. like, at all. π9bindonly does a "shallow", non-recursive bind β any mounted filesystems under the OLD tree will not appear mounted in the NEW tree. this one bites people, so watch out π¬- If you
9binda non-9p filesystem outside your home directory,9umountwon't let you unmount it. rude, but true π
β¨ AUTHOR β¨
sqweek@gmail.com β ty for your service legend π«‘
β SEE ALSO β
and that's the page, bestie!! you're so ready for this π«Ά
this was 9mount(1) from the User commands manual, page version/date 23 July 2008 β mwah, catch you in the next manpage πβ¨π
π¦ where this page comes from
- ubuntu stonking: 9mount 1.5-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms