9mount(1)

NAME
9mount, 9bind, 9umount - mount/unmount 9p filesystems

SYNOPSIS
9mount [ insuvx ] [ -a SPEC ] [ -c CACHE ] [ -d DEBUG ] [ -m MSIZE ] DIAL MOUNTPT

9bind OLD NEW

9umount MOUNTPT

DESCRIPTION
9mount mounts a 9p filesystem served at DIAL on MOUNTPT. MOUNTPT must be writable by you and not sticky. DIAL is a dial string assuming one of the forms:

unix!SOCKET
tcp!HOST[!PORT]
virtio!CHANNEL
-

where SOCKET is the name of a file representing a socket, HOST is a hostname, PORT is a port number or service name, and CHANNEL is a virtio channel name (currently ignored). - indicates that 9p messages should be read/written on stdin/stdout. 9mount has several options:

-i  mount the file system with your uid/gid

-n  dry-run, print mount command to stderr but don't actually mount anything

-s  single attach mode - all users accessing the mount point see the same filesystem (by default they'll each see a unique attach)

-u  use the 9P2000.u extensions

-v  use device mapping

-x  exclusive access - other users cannot access the mount point

-a SPEC
    SPEC determines which file tree to mount when attaching to file servers that export multiple trees

-c CACHE
    turns on caching using CACHE mode. Supported modes are loose (suitable for exclusive read-only mounts), fscache, and mmap.

-d DEBUG
    comma seperated list of channels for which to enable debug output. Possible channels include: err, devel, 9p, vfs, conv, mux, trans, alloc, fcall.

-m MSIZE
    specifies the maximum length of a single 9p message in bytes. Must be less than or equal to 8192 for non-root users.

9bind performs a bind mount, making the tree visible at directory OLD also visible at mount point NEW.

9umount unmounts a 9p filesystem previously mounted by you.

ENVIRONMENT

$USER
    the uname to provide to the server.

EXAMPLES

9mount -i 'unix!/tmp/ns.'$USER'.:0/factotum' $HOME/n/factotum
    mount p9p's factotum interface

9mount 'tcp!sources.cs.bell-labs.com' $HOME/n/sources
    import plan 9's "sources"

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

BUGS
9mount truncates user names and SPECs to 249 characters. 9umount doesn'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.

9mount doesn't update /etc/mtab.

9bind only does a "shallow", non-recursive bind - any mounted filesystems under the OLD tree will not appear mounted in the NEW tree.

If you 9bind a non-9p filesystem outside your home directory, 9umount won't let you unmount it.

AUTHOR
sqweek@gmail.com

SEE ALSO
mount(1)