Go to main content

man pages section 8: System Administration Commands

Exit Print View

Updated: Thursday, June 13, 2019
 
 

nfsd(8)

Name

nfsd - NFS daemon

Synopsis

/usr/lib/nfs/nfsd [-a] [
-c #_conn] [-l 
listen_backlog] 
     [-p protocol] [-t 
device] [nservers]

Description

nfsd is the daemon that handles client file system requests. Only users with {PRIV_SYS_NFS} and sufficient privileges to write to /var/run can run this daemon.

The nfsd daemon is automatically invoked using share(8) with the –a option.

By default, nfsd starts over the TCP and UDP transports for versions 2 and 3. By default, it starts over the TCP for version 4. You can change this with the –p option.

A previously invoked nfsd daemon started with or without options must be stopped before invoking another nfsd command.

To change startup parameters for nfsd, use the sharectl(8) command.

SMF Management

The nfsd service is managed by the service management facility, smf(7), under the service identifier:

svc:/network/nfs/server

Administrative actions on this service, such as enabling, disabling, or requesting restart, can be performed using svcadm(8). The service's status can be queried using the svcs(1) command.

If nfsd is killed with SIGTERM, it will not be restarted by the service management facility. Instead, nfsd can be restarted by other signals, such as SIGINT.

The sharectl(8) command can be used to manage all the parameters related to nfsd. The following are the parameters currently supported:

server_versmax=num
server_versmin=num

The NFS server only uses NFS versions in the range specified by these variables. Valid values or versions are: 2, 3, 4 and 4.1. For the server, the default minimum version is 2 and the default maximum version is 4.1. server_versmin=4 is equivalent to 4.0, while server_versmax=4 is equivalent to 4.1. Both min and max can be set to 4.0 or 4.1 explicitly to avoid confusion.

server_delegation=on | off

By default, this variable is on and the NFS server provides delegations to clients. The user can turn off delegations for all exported file systems by setting this variable to off (case-sensitive). This variable applies only to NFS Version 4.

max_connections=num

Sets the maximum number of concurrent, connection-oriented connections. The default is unlimited and is obtained by setting to -1. Equivalent to the –c option in nfsd.

listen_backlog=num

Set connection queue length for the NFS over a connection-oriented transport. The default value is 32, meaning 32 entries in the queue. Equivalent to the –l option in nfsd.

protocol=ALL

Start nfsd over the specified protocol only. Equivalent to the -p option in nfsd. ALL is equivalent to –a on the nfsd command line. Mutually exclusive of NFS SMF parameter device. One or the other of NFS SMF parameters device and protocol must not be set. If both are set, the nfs/server service goes into maintenance mode. For the UDP protocol, only version 2 and version 3 service is established. NFS Version 4 is not supported for the UDP protocol. Equivalent to the –p option.

device=devname

Start NFS daemon for the transport specified by the specified device only. Equivalent to the –t option in nfsd. Mutually exclusive of NFS SMF parameter protocol. One or the other of NFS SMF parameters device and protocol must not be set.

servers=num

Maximum number of concurrent NFS requests. The default is 2048. Equivalent to the nservers operand.

server_numeric_stringid=on|off

By default, this variable is on and the NFS server accepts the numeric uids and gids from NFS clients using auth_sys authentication and returns numeric uids and gids to clients using auth_sys. To turn off this behaviour, set the variable to 'off'(case-sensitive). This variable applies only to NFS Version 4 and is intended to ease migration from NFSv2/v3.

See EXAMPLES, below.

Options

The following options are supported:

–a

Start an NFS daemon over all available connectionless and connection-oriented transports, including UDP and TCP. Equivalent of setting the protocol parameter to ALL in the SMF for NFS using the sharectl(8) command.

–c #_conn

This sets the maximum number of connections allowed to the NFS server over connection-oriented transports. By default, the number of connections is unlimited. Equivalent of the max_connections parameter in the SMF for NFS using the sharectl(8) command.

–l

Set connection queue length for the NFS TCP over a connection-oriented transport. The default value is 32 entries. Equivalent of the listen_backlog parameter in the SMF for NFS using the sharectl(8) command.

–p protocol

Start a NFS daemon over the specified protocol. Equivalent of the protocol parameter in the SMF for NFS using the sharectl(8) command.

–t device

Start a NFS daemon for the transport specified by the given device. Equivalent of the device parameter in the SMF for NFS using the sharectl(8) command.

Operands

The following operands are supported:

nservers

This sets the maximum number of concurrent NFS requests that the server can handle. This concurrency is achieved by up to nservers threads created as needed in the kernel. nservers should be based on the load expected on this server. If nservers is not specified, the maximum number of concurrent NFS requests will default to 2048. Equivalent of the servers parameter in the SMF for NFS using the sharectl(8) command.

Examples

Example 1 Turning Off Delegation

The nfsd properties specified in these examples are described under “SMF Management,” above.

Delegation is an NFSv4 feature in which the server delegates the management of a file to a client. For example, the server could grant (or not grant) either a read delegation or a write delegation to a client. The following command does this, setting the server_delegation property to off.

# sharectl set -p server_delegation=off nfs
Example 2 Determining Value of Delegation

The following command obtains the current value of the server_delegation property.

# sharectl get -p server_delegation nfs
server_delegation=on
Example 3 Setting Maximum Number of Concurrent Requests

The following command sets the maximum number of concurrent NFS requests.

# sharectl set -p servers=32 nfs
Example 4 Setting Connection Queue Length

The following command sets the maximum queue length for the NFS over a connection-oriented transport.

# sharectl set -p listen_backlog=48 nfs

Exit Status

0

Daemon started successfully.

1

Daemon failed to start.

Files

.nfsXXX

Client machine pointer to an open-but-unlinked file.

/etc/system

System configuration information file.

/var/nfs/v4_state
/var/nfs/v4_oldstate
/var/nfs/v41_state
/var/nfs/v41_oldstate

Directories used by the server to manage client state information. These directories should not be removed.

Attributes

See attributes(7) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Availability
service/file-system/nfs

See Also

ps(1), svcs(1), sharetab(5), system(5), attributes(7), smf(7), mountd(8), share(8), sharectl(8), svcadm(8)

Notes

Manually starting and restarting nfsd is not recommended. If it is necessary to do so, use svcadm to enable or disable the nfs service (svc:/network/nfs/server). If it is disabled, it will be enabled by share_nfs(8), unless its application/auto_enable property is set to false. See the System Administration Guide: Network Services, and svcadm(8) for more information.