nfsserver, portmapper, pcnfsd – NFS service
These programs collectively provide NFS access to Plan 9 file servers.
run on a Plan 9 CPU server, and should be started in that order.
All users on client machines have the
access privileges of the Plan 9 user
Currently only NFS version 2 is served.
are all intended for debugging:
unhandled troff command .nr
Reject: answer all RPC requests by returning the
Verbose: show all RPC calls and internal program state, including 9P messages.
(In any case, the program creates a file
is that of the program; echoing
into this file sets or clears the
Debug: show all RPC messages (at a lower level than
This flag may be repeated to get more detail.
Turn off caching: do not answer RPC requests using the
RPC reply cache.
Set up NFS service for the 9P server at network address
Set up NFS service for the 9P server at
(typically an entry in
Do not allow per-user authentication
(default and mandatory).
contains the uid/gid map configuration. It is read at startup
and subsequently every hour (or if
is echoed into
Blank lines or lines beginning with
are ignored; lines beginning with
are executed as commands; otherwise lines contain four fields
separated by white space: a regular expression (in the notation of
for a class of servers, a regular expression for
a class of clients, a file of user id’s (in the format of a Unix
password file), and a file of group id’s (same format).
Expect a network connection on file descriptor 1
instead of listening for incoming calls.
Listen for incoming TCP calls, rather than UDP calls.
NFS clients must be in the Plan 9
The machine name is deduced from the IP address via
The machine name specified in the NFS Unix credentials
is completely ignored.
is a toy program that authorizes PC-NFS clients. All clients
are mapped to uid=1, gid=1
on most systems) regardless of name or password.
.+ [^.]+\.cvrd\.hall\.edu /n/ivy/etc/passwd /n/ivy/etc/group
A typical entry in
aux/nfsserver -a tcp!pie -a tcp!yoshimi -c /lib/ndb/nfs
Assuming the CPU server’s name is
the mount commands on the client would be:
/etc/mount -o soft,intr eduardo:pie /n/pie
/etc/mount -o soft,intr eduardo:yoshimi /n/yoshimi
Note that a single instance of
may provide access to several 9P servers.
List of uid/gid maps.
It would be nice to provide authentication for users, but Unix systems
provide too low a level of security to be trusted in a Plan 9 world.
RPC: Remote Procedure Call Protocol Specification, Version 2,
describes Sun’s RPC protocol.
NFS: Network File System Protocol Specification,
describes NFS version 2.
NFS Version 3 Protocol Specification.
Network File System (NFS) version 4 Protocol.