'\" te
.\"  Copyright (c) 2004 Sun Microsystems, Inc. All rights reserved.
.\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
.\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
.TH NFS 4 "Oct 13, 2004"
.SH NAME
nfs \- file containing parameter values for NFS-related daemons
.SH SYNOPSIS
.LP
.nf
\fB/etc/default/nfs\fR
.fi

.SH DESCRIPTION
.sp
.LP
The \fBnfs\fR file resides in directory \fB/etc/default\fR and provides startup
parameters for the \fBnfsd\fR(1M) and \fBlockd\fR(1M) daemons.
.sp
.LP
The \fBnfs\fR file format is \fBASCII\fR; comment lines begin with the
crosshatch (\fB#\fR) character. Parameters consist of a keyword followed by an
equals (\fB=\fR) sign followed by the parameter value, of the form:
.sp
.in +2
.nf
\fIkeyword\fR=\fIvalue\fR
.fi
.in -2
.sp

.sp
.LP
The following parameters are currently supported in the \fBnfs\fR file:
.sp
.ne 2
.na
\fB\fBNFS_CLIENT_VERSMIN=\fR\fInum\fR\fR
.ad
.br
.na
\fB\fBNFS_CLIENT_VERSMAX=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
The NFS client only uses NFS versions in the range specified by these
variables. Valid values or versions are: \fB2\fR, \fB3\fR, and \fB4\fR. By
default these variables are unspecified (commented out) and the client's
default minimum is Version 2. The default maximum is Version 4. You can
override this range on a per-mount basis by using the \fB-o vers=\fR option to
\fBmount_nfs\fR(1M).
.RE

.sp
.ne 2
.na
\fB\fBNFS_SERVER_VERSMIN=\fR\fInum\fR\fR
.ad
.br
.na
\fB\fBNFS_SERVER_VERSMAX=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
The NFS server only uses NFS versions in the range specified by these
variables. Valid values or versions are: \fB2\fR, \fB3\fR, and \fB4\fR. As with
the client, the default is to leave these variables commented out and the
default minimum version is \fB2\fR, while the default maximum version is
\fB4\fR.
.RE

.sp
.ne 2
.na
\fB\fBNFS_SERVER_DELEGATION=on | off\fR\fR
.ad
.sp .6
.RS 4n
By default, this variable is commented out and the NFS server provides
delegations to clients. The user can turn off delegations for all exported
filesystems by setting this variable to \fBoff\fR (case-sensitive). This
variable only applies to NFS Version 4.
.RE

.sp
.ne 2
.na
\fB\fBNFSMAPID_DOMAIN=\fR\fIdomain-string\fR\fR
.ad
.sp .6
.RS 4n
By default, the \fBnfsmapid\fR uses the DNS domain of the system. This setting
overrides the default. This domain is used for identifying user and group
attribute strings in the NFS Version 4 protocol. Clients and servers must match
with this domain for operation to proceed normally. This variable only applies
to NFS Version 4. See "Setting \fBNFSMAPID_DOMAIN\fR," below for further
details.
.RE

.sp
.ne 2
.na
\fB\fBNFSD_MAX_CONNECTIONS=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Sets the maximum number of concurrent, connection-oriented connections. The
default is unlimited and is obtained by not setting (that is, commenting out)
\fBNFSD_MAX_CONNECTIONS\fR. Equivalent to the \fB-c\fR option in \fBnfsd\fR.
.RE

.sp
.ne 2
.na
\fB\fBNFSD_LISTEN_BACKLOG=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
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
\fB-l\fR option in \fBnfsd\fR.
.RE

.sp
.ne 2
.na
\fB\fBNFSD_PROTOCOL=ALL\fR\fR
.ad
.sp .6
.RS 4n
Start \fBnfsd\fR over the specified protocol only. Equivalent to the \fB-p\fR
option in \fBnfsd\fR. \fBALL\fR is equivalent to \fB-a\fR on the \fBnfsd\fR
command line. Mutually exlusive of \fBNFSD_DEVICE\fR. One or the other of
\fBNFSD_DEVICE\fR and \fBNFSD_PROTOCOL\fR must be commented out. For the UDP
protocol, only version 2 and version 3 service is established. NFS Version 4 is
not supported for the UDP protocol.
.RE

.sp
.ne 2
.na
\fB\fBNFSD_DEVICE=\fR\fIdevname\fR\fR
.ad
.sp .6
.RS 4n
Start NFS daemon for the transport specified by the given device only.
Equivalent to the \fB-t\fR option in \fBnfsd\fR. Mutually exclusive of
\fBNFSD_PROTOCOL\fR. One or the other of \fBNFSD_DEVICE\fR and
\fBNFSD_PROTOCOL\fR must be commented out.
.RE

.sp
.ne 2
.na
\fB\fBNFSD_SERVERS=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Maximum number of concurrent NFS requests. Equivalent to last numeric argument
on the \fBnfsd\fR command line. The default is \fB16\fR.
.RE

.sp
.ne 2
.na
\fB\fBLOCKD_LISTEN_BACKLOG=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Set connection queue length for \fBlockd\fR over a connection-oriented
transport. The default and minimum value is \fB32\fR.
.RE

.sp
.ne 2
.na
\fB\fBLOCKD_SERVERS=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Maximum number of concurrent \fBlockd\fR requests. The default is \fB20\fR.
.RE

.sp
.ne 2
.na
\fB\fBLOCKD_RETRANSMIT_TIMEOUT=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Retransmit timeout, in seconds, before \fBlockd\fR retries. The default is
\fB5\fR.
.RE

.sp
.ne 2
.na
\fB\fBGRACE_PERIOD=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Grace period, in seconds, that all clients (both \fBNLM\fR and \fBNFSv4\fR)
have to reclaim locks after a server reboot. This parameter also controls the
\fBNFSv4\fR lease interval and overrides the deprecated setting
\fBLOCKD_GRACE_PERIOD\fR. The default is \fB90\fR.
.RE

.sp
.ne 2
.na
\fB\fBLOCKD_GRACE_PERIOD=\fR\fInum\fR\fR
.ad
.sp .6
.RS 4n
Deprecated. Same as \fBGRACE_PERIOD=\fR\fInum\fR above. The default is
\fB90\fR.
.RE

.SS "Setting \fBNFSMAPID_DOMAIN\fR"
.sp
.LP
As described above, the setting for \fBNFSMAPID_DOMAIN\fR overrides the domain
used by \fBnfsmapid\fR(1M) for building and comparing outbound and inbound
attribute strings, respectively. This setting overrides any other mechanism for
setting the NFSv4 domain. In the absence of a \fBNFSMAPID_DOMAIN\fR setting,
the \fBnfsmapid\fR(1M) daemon determines the NFSv4 domain as follows:
.RS +4
.TP
.ie t \(bu
.el o
If a properly configured \fB/etc/resolv.conf\fR (see \fBresolv.conf\fR(4))
exists, \fBnfsmapid\fR queries specified nameserver(s) for the domain.
.RE
.RS +4
.TP
.ie t \(bu
.el o
If a properly configured \fB/etc/resolv.conf\fR (see \fBresolv.conf\fR(4))
exists, but the queried nameserver does not have a proper record of the domain
name, \fBnfsmapid\fR attempts to obtain the domain name through the BIND
interface (see \fBresolver\fR(3RESOLV)).
.RE
.RS +4
.TP
.ie t \(bu
.el o
If no \fB/etc/resolv.conf\fR exists, \fBnfsmapid\fR falls back on using the
configured domain name (see \fBdomainname\fR(1M)), which is returned with the
leading domain suffix removed. For example, for \fBwidgets.sales.acme.com\fR,
\fBsales.acme.com\fR is returned.
.RE
.RS +4
.TP
.ie t \(bu
.el o
If \fB/etc/resolv.conf\fR does not exist, no domain name has been configured
(or no \fB/etc/defaultdomain\fR exists), \fBnfsmapid\fR falls back on obtaining
the domain name from the host name, if the host name contains a fully qualified
domain name (FQDN).
.RE
.sp
.LP
If a domainname is still not obtained following all of the preceding steps,
\fBnfsmapid\fR will have no domain configured. This results in the following
behavior:
.RS +4
.TP
.ie t \(bu
.el o
Outbound "owner" and "owner_group" attribute strings are encoded as literal
id's. For example, the UID 12345 is encoded as \fB12345\fR.
.RE
.RS +4
.TP
.ie t \(bu
.el o
\fBnfsmapid\fR ignores the "domain" portion of the inbound attribute string and
performs name service lookups only for the user or group. If the user/group
exists in the local system name service databases, then the proper uid/gid will
be mapped even when no domain has been configured.
.sp
This behavior implies that the same administrative user/group domain exists
between NFSv4 client and server (that is, the same uid/gid's for users/groups
on both client and server). In the case of overlapping id spaces, the inbound
attribute string could potentially be mapped to the wrong id. However, this is
not functionally different from mapping the inbound string to \fBnobody\fR, yet
provides greater flexibility.
.RE
.SH SEE ALSO
.sp
.LP
\fBlockd\fR(1M), \fBmount_nfs\fR(1M), \fBnfsd\fR(1M), \fBnfsmapid\fR(1M)
.sp
.LP
\fISystem Administration Guide: Network Services\fR