NAME
nfs, NFS - network file system
DESCRIPTION
The Network File System, or NFS, allows a client workstation
to
perform transparent file access over the network. Using it,
a
client workstation can operate on files that reside on a
variety of
servers, server architectures and across a variety of
operating
systems. Client file access calls are converted to NFS
protocol
requests, and are sent to the server system over the
network. The
server receives the request, performs the actual file system
operation, and sends a response back to the client.
The Network File System operates
in a stateless fashion using
remote procedure (RPC) calls built on top of external data
representation (XDR) protocol. The RPC protocol provides for
version and authentication parameters to be exchanged for
security
over the network.
A server can grant access to a
specific filesystem to certain
clients by adding an entry for that filesystem to the
server’s
/etc/exports file.
A client gains access to that
filesystem with the mount(2) system
call, which requests a file handle for the filesystem
itself. Once
the filesystem is mounted by the client, the server issues a
file
handle to the client for each file (or directory) the client
accesses. If the file is somehow removed on the server side,
the
file handle becomes stale (dissociated with a known
file).
A server may also be a client
with respect to filesystems it has
mounted over the network, but its clients cannot gain access
to
those filesystems. Instead, the client must mount a
filesystem
directly from the server on which it resides.
The user ID and group ID
mappings must be the same between client
and server. However, the server maps uid 0 (the super-user)
to uid
-2 before performing access checks for a client. This
inhibits
super-user privileges on remote filesystems.
NFS-related routines and
structure definitions are described in the
"NFS Protocol Specification" (RFC1094).
ERRORS
Generally physical disk I/O errors detected at the server
are
returned to the client for action. If the server is down or
inaccessible, the client will see the console message:
NFS: file server not responding: still trying.
The client continues (forever)
to resend the request until it
receives an acknowledgement from the server. This means the
server
can crash or power down, and come back up, without any
special
action required by the client. It also means the client
process
requesting the I/O will block and remain insensitive to
signals,
sleeping inside the kernel at PRIBIO.
FILES
/etc/exports
SEE ALSO
mount (2), fstab (5), mount (8), nfsd (8)