NAME
nnffssdd - NFS server daemon
SYNOPSIS
nnffssdd [ccoommmmaanndd]nnffssdd [-FF exportsfile] cchheecckkeexxppoorrttss
nnffssdd [-NNRRrrttuuvv] [-FF exportsfile] [-nn numservers] [-pp nfsport]
[-PP mountport] [ccoommmmaanndd]
DESCRIPTION
nnffssdd runs on an NFS server machine to service NFS and MOUNT protocol requests from NFS client machines. In order for a machine to act as an NFS server an NFS exports file, /etc/exports, must exist and the nnffssdd service must be enabled. nnffssdd listens for NFS service requests at the port indicated in the NFSserver specification (2049) and the mountd thread listens for MOUNT ser-
vice requests at an available port registered with portmap(8). For more information on the NFS and MOUNT protocols see Network File System Protocol Specification, RFC1094 and NFS: Network File System Version 3 Protocol Specification.The nnffssdd daemon is a multi-threaded process that includes a number of
threads processing NFS requests, a thread to accept new socket connec-
tions and a thread that processes NFS MOUNT protocol requests. When nnffssdd is started, it loads the export host addresses and options into the kernel using the nfssvc(2) system call. After changing the list ofexports (either directly or indirectly via a change in netgroup member-
ship), a hangup signal should be sent to the daemon to get it to reload the export information. This can be accomplished with the uuppddaattee command described below. Any errors encountered while processing the export entries will be logged via syslog(3). nnffssdd is normally launched by launchd(8); however, the nnffssdd command may also be used to manipulate the service using the following commands: eennaabbllee Enables the nnffssdd service. ddiissaabbllee Disables the nnffssdd service. ssttaarrtt Starts the nnffssdd service. Note: if the service is disabled it will not be restarted on reboot. Use the eennaabbllee command to make the change permanent. ssttoopp Stops the nnffssdd service. Note: if the service is enabled it will be restarted on reboot. Use the ddiissaabbllee command to make the change permanent.rreessttaarrtt Restarts the nnffssdd service (by stopping the service - it will
restart automatically if the /etc/exports file exists). uuppddaattee Sends a SIGHUP to the running nnffssdd daemon to cause it to update its configuration. ssttaattuuss Displays whether the nnffssdd service is enabled and whether the nnffssdd daemon is currently running. cchheecckkeexxppoorrttss Checks the exports file and reports any errors (to stderr).Note that this can be useful to verify the validity of an alter-
nate exports file (using the -FF option below) prior to putting
the changes in place and updating nnffssdd. vveerrbboossee [[uupp||ddoowwnn]]++ Sends USR1 and/or USR2 signal(s) to the running nnffssdd daemon to cause it to increase and/or decrease its logging level. (See below for details about nnffssdd's logging). Logging is performed via syslog(3) using the LOGDAEMON facility. By default, only messages up to priority LOGWARNING are logged. Settingthe verbose level to one will add LOGNOTICE messages which includes log-
ging failed mount attempts. A verbose level of two will increase the log level to LOGINFO which includes logging successful mount attempts. Alog level of three or more will add LOGDEBUG messages and cause increas-
ing amounts of debug information to be logged. The debug informationexposes lots of information about nnffssdd's inner workings which is typi-
cally only useful to developers. Note: the syslog(8) configuration may need to be adjusted in order to see the increased verbosity. The nnffssdd utility exits 0 on success, and >0 if an error occurs. When given the ssttaattuuss command, it exits 0 if the service is enabled, and 1 if the service is disabled.The following is a list of command line options that are available. How-
ever, since nnffssdd is normally started by launchd(8), configuration of these options should be controlled using the equivalent settings in the NFS configuration file (see nfs.conf(5)).-FF exportsfile
The exportsfile argument specifies an alternate location for the exports file (useful with the cchheecckkeexxppoorrttss command).-NN Allow non-root mount requests to be served. This should only be
specified if there are clients that require it.-PP # Specifies which port to use for the MOUNT service.
-RR Allow mount RPCs requests for regular files to be served.
Although this seems to violate the mount protocol specification, some diskless workstations do mount requests for their swapfiles and expect them to be regular files. Since a regular file cannotbe specified in /etc/exports, the -aallllddiirrss option will need to be
used on the export in which the swap files reside.-nn # Specifies how many NFS server threads to create.
-pp # Specifies which port to use for the NFS service (instead of the
default of 2049).-rr Register the NFS service with portmap(8). This option can be
used to re-register the NFS services if the portmap server is
restarted. This option is equivalent to the uuppddaattee command.-tt Serve TCP NFS clients. Note: only TCP will be used if no other
options are specified.-uu Serve UDP NFS clients. Note: only UDP will be used if no other
options are specified.-vv Increase nnffssdd's logging level by one (may be used multiple
times). CCOONNFFIIGGUURRAATTIIOONN Unless otherwise specified, eight NFS server threads are started and both UDP and TCP transports are supported.A server should run enough threads to handle the maximum level of concur-
rency from its clients. See nfs.conf(5) for a list of tunable parameters. FILES /etc/exports The list of exported filesystems./var/run/nfsd.pid The pid of the currently running nfsd.
/var/run/mountd.pid The pid of the currently running mountd (provided for backwards compatibility with scripts that may HUP mountd to update exports). /var/run/mountdtab The current list of outstanding mounts served./var/run/mountdexptab Information about exported file systems and direc-
tories (UUIDs, handles, ...)./System/Library/LaunchDaemons/com.apple.nfsd.plist
The nnffssdd service's property list file for launchd(8).SEE ALSO
exports(5), nfs.conf(5), showmount(8), nfsstat(1), nfssvc(2), portmap(8), rpc.rquotad(8), launchd(8) HISTORYThe nnffssdd and mmoouunnttdd utilities first appeared in 4.4BSD. mmoouunnttdd function-
ality was merged into nnffssdd in Darwin 9. BSD November 10, 2006 BSD