NAME
nfs, NFS — network file system
DESCRIPTION
The Network File System (NFS) allows a client node to perform
transparent file access over the network.
By using NFS,
a client node operates on files
residing on a variety of servers and server architectures,
and across a variety of operating systems.
File access calls on the client (such as read requests)
are converted to NFS
protocol requests and 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.
NFS operates in a stateless manner using remote procedure calls (RPC)
built on top of an external data representation (XDR) protocol.
The RPC protocol enables version and authentication parameters
to be exchanged for security over the network.
A server grants access to a specific file system
to clients by adding an entry for that file system to the server's
/etc/dfs/dfstab
file.
A client gains access to that file system using the
mount
command to request a file handle for the file system (see
mount(1M)).
(A file handle is the means by which
NFS identifies remote files.)
Once a client mounts the file system,
the server issues a file handle to the client
for each file (or directory) the client accesses.
If the file is removed on the server side,
the file handle becomes stale (dissociated with a known file),
and the server returns an error with
errno
set to
ESTALE.
A server can also be a client
with respect to file systems it has mounted over the network;
however, its clients cannot directly access those file systems.
If a client attempts to mount a file system for which the server is an
NFS client, the server returns with
errno
set to
EREMOTE.
The client must mount the file system directly
from the server on which the file system resides.
The user ID and group ID mappings must be the same between client and server.
However, the server maps UID 0 (the superuser) to UID -2
before performing access checks for a client.
This process prevents gaining superuser privileges on remote file systems.
RETURN VALUE
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 receives the message:
NFS: file server xxx not responding: still trying.
where
xxx
is the hostname of the NFS server. The client continues resending the request
until it receives an acknowledgement from the server.
Therefore, the server can crash or power down,
and come back up without any special action required by the client.
The client process requesting the I/O
will block, but remains sensitive to signals
(unless mounted with the
nointr
option) until the server recovers.
However, if mounted with the
soft
option, the client process returns an error
instead of waiting indefinitely.
AUTHOR
nfs
was developed by Sun Microsystems, Inc.