1 .\"
   2 .\" The contents of this file are subject to the terms of the
   3 .\" Common Development and Distribution License (the "License").
   4 .\" You may not use this file except in compliance with the License.
   5 .\"
   6 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
   7 .\" or http://www.opensolaris.org/os/licensing.
   8 .\" See the License for the specific language governing permissions
   9 .\" and limitations under the License.
  10 .\"
  11 .\" When distributing Covered Code, include this CDDL HEADER in each
  12 .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  13 .\" If applicable, add the following below this CDDL HEADER, with the
  14 .\" fields enclosed by brackets "[]" replaced with your own identifying
  15 .\" information: Portions Copyright [yyyy] [name of copyright owner]
  16 .\"
  17 .\"
  18 .\" Copyright 1989 AT&T
  19 .\" Copyright (c) 2004, Sun Microsystems, Inc. All Rights Reserved
  20 .\" Copyright 2016 Nexenta Systems, Inc.
  21 .\"
  22 .Dd March 12, 2016
  23 .Dt NFSD 1M
  24 .Os
  25 .Sh NAME
  26 .Nm nfsd
  27 .Nd NFS daemon
  28 .Sh SYNOPSIS
  29 .Nm /usr/lib/nfs/nfsd
  30 .Op Fl a
  31 .Op Fl c Ar max_conn
  32 .Op Fl l Ar listen_backlog
  33 .Op Fl p Ar protocol
  34 .Op Fl t Ar device
  35 .Op Ar nservers
  36 .Sh DESCRIPTION
  37 .Nm
  38 is the daemon that handles client file system requests.
  39 Only users with
  40 .Brq Sy PRIV_SYS_NFS
  41 and sufficient privileges to write to
  42 .Pa /var/run
  43 can run this daemon.
  44 .Pp
  45 The
  46 .Nm
  47 daemon is automatically invoked using
  48 .Xr share 1M
  49 with the
  50 .Fl a
  51 option.
  52 .Pp
  53 By default,
  54 .Nm
  55 starts over the TCP and UDP transports for versions 2 and 3.
  56 By default, it starts over the TCP for version 4.
  57 You can change this with the
  58 .Fl p
  59 option.
  60 .Pp
  61 A previously invoked
  62 .Nm
  63 daemon started with or without options must be stopped before invoking another
  64 .Nm
  65 command.
  66 .Pp
  67 See
  68 .Xr nfs 4
  69 for available configuration properties for
  70 .Nm .
  71 .Ss Options
  72 The following options are supported:
  73 .Bl -tag -width Ds
  74 .It Fl a
  75 Start a NFS daemon over all available connectionless and connection-oriented
  76 transports, including UDP and TCP.
  77 Equivalent of setting the
  78 .Sy protocol
  79 property to
  80 .Sy all .
  81 .It Fl c Ar max_conn
  82 Set the maximum number of connections allowed to the NFS server over
  83 connection-oriented transports.
  84 By default, the number of connections is unlimited.
  85 Equivalent of the
  86 .Sy max_connections
  87 property.
  88 .It Fl l
  89 Set connection queue length for the NFS server over a connection-oriented
  90 transport.
  91 The default value is 32 entries.
  92 Equivalent of the
  93 .Sy listen_backlog
  94 property.
  95 .It Fl p Ar protocol
  96 Start a NFS daemon over the specified protocol.
  97 Equivalent of the
  98 .Sy protocol
  99 property.
 100 .It Fl t Ar device
 101 Start a NFS daemon for the transport specified by the given device.
 102 Equivalent of the
 103 .Sy device
 104 property.
 105 .El
 106 .Ss Operands
 107 The following operands are supported:
 108 .Bl -tag -width Ds
 109 .It Ar nservers
 110 This sets the maximum number of concurrent NFS requests that the server can
 111 handle.
 112 This concurrency is achieved by up to
 113 .Ar nservers
 114 threads created as needed in the kernel.
 115 .Ar nservers
 116 should be based on the load expected on this server.
 117 16 is the usual number of
 118 .Ar nservers .
 119 If
 120 .Ar nservers
 121 is not specified, the maximum number of concurrent NFS requests will default to
 122 1.
 123 Equivalent of the
 124 .Sy servers
 125 property.
 126 .El
 127 .Ss Usage
 128 If the
 129 .Sy nfs_portmon
 130 variable is set to non-zero value in
 131 .Pa /etc/system ,
 132 then clients are required to use privileged ports
 133 .Po ports <
 134 .Dv IPPORT_RESERVED
 135 .Pc
 136 to get NFS services.
 137 This variable is equal to zero by default.
 138 This variable has been moved from the
 139 .Qq nfs
 140 module to the
 141 .Qq nfssrv
 142 module.
 143 To set the variable, edit the
 144 .Pa /etc/system
 145 file and add this entry:
 146 .Bd -literal -offset indent
 147 set nfssrv:nfs_portmon = 1
 148 .Ed
 149 .Sh FILES
 150 .Bl -tag -width Ds
 151 .It Pa \&.nfsXXX
 152 Client machine pointer to an open-but-unlinked file.
 153 .It Pa /etc/system
 154 System configuration information file.
 155 .It Xo
 156 .Pa /var/nfs/v4_state
 157 .br
 158 .Pa /var/nfs/v4_oldstate
 159 .Xc
 160 Directories used by the server to manage client state information.
 161 These directories should not be removed.
 162 .El
 163 .Sh EXIT STATUS
 164 .Bl -tag -width Ds
 165 .It Sy 0
 166 Daemon started successfully.
 167 .It Sy 1
 168 Daemon failed to start.
 169 .El
 170 .Sh SEE ALSO
 171 .Xr svcs 1 ,
 172 .Xr mountd 1M ,
 173 .Xr share 1M ,
 174 .Xr sharectl 1M ,
 175 .Xr sharemgr 1M ,
 176 .Xr svcadm 1M ,
 177 .Xr nfs 4 ,
 178 .Xr sharetab 4 ,
 179 .Xr system 4 ,
 180 .Xr attributes 5 ,
 181 .Xr smf 5
 182 .Sh NOTES
 183 Manually starting and restarting
 184 .Nm
 185 is not recommended.
 186 If it is necessary to do so, use
 187 .Nm svcadm
 188 to enable or disable the nfs service
 189 .Pq svc:/network/nfs/server .
 190 If it is disabled, it will be enabled by
 191 .Xr share_nfs 1M ,
 192 unless its
 193 .Sy application Ns / Ns Sy auto_enable
 194 property is set to
 195 .Sy false .
 196 See the , and
 197 .Xr svcadm 1M
 198 for more information.
 199 .Pp
 200 The
 201 .Nm
 202 service is managed by the service management facility,
 203 .Xr smf 5 ,
 204 under the service identifier:
 205 .Bd -literal -offset indent
 206 svc:/network/nfs/server
 207 .Ed
 208 .Pp
 209 Administrative actions on this service, such as enabling, disabling, or
 210 requesting restart, can be performed using
 211 .Xr svcadm 1M .
 212 The service's status can be queried using the
 213 .Xr svcs 1
 214 command.
 215 .Pp
 216 If
 217 .Nm
 218 is killed with
 219 .Sy SIGTERM ,
 220 it will not be restarted by the service management facility.
 221 Instead,
 222 .Nm
 223 can be restarted by other signals, such as
 224 .Sy SIGINT .