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 December 16, 2016 23 .Dt NFS 4 24 .Os 25 .Sh NAME 26 .Nm nfs 27 .Nd NFS configuration properties 28 .Sh DESCRIPTION 29 The behavior of the 30 .Xr nfsd 1M , 31 .Xr nfsmapid 1M , 32 .Xr lockd 1M , 33 and 34 .Xr mountd 1M 35 daemons and 36 .Xr mount_nfs 1M 37 command is controlled by property values that are stored in the Service 38 Management Facility, smf(5). 39 The 40 .Xr sharectl 1M 41 command should be used to query or change values for these properties. 42 .Pp 43 Changes made to 44 .Nm 45 property values on the 46 .Nm nfsd , 47 .Nm lockd , 48 .Nm mountd , 49 or 50 .Nm mount_nfs 51 command line override the values set using 52 .Xr sharectl 1M . 53 .Pp 54 The following list describes the properties: 55 .Bl -tag -width Ds 56 .It Xo 57 .Sy client_versmin Ns = Ns Ar num 58 .br 59 .Sy client_versmax Ns = Ns Ar num 60 .Xc 61 The NFS client only uses NFS versions in the range specified by these 62 properties. 63 Valid values of versions are: 2, 3, and 4. 64 Default minimum version is 65 .Li 2 , 66 while default maximum is 67 .Li 4 . 68 .Pp 69 You can override this range on a per-mount basis by using the 70 .Fl o Sy vers Ns = 71 option to 72 .Xr mount_nfs 1M . 73 .It Xo 74 .Sy server_versmin Ns = Ns Ar num 75 .br 76 .Sy server_versmax Ns = Ns Ar num 77 .Xc 78 The NFS server only uses NFS versions in the range specified by these 79 properties. 80 Valid values of versions are: 2, 3, and 4. 81 Default minimum version is 82 .Li 2 , 83 while the default maximum version is 84 .Li 4 . 85 .It Sy server_delegation Ns = Ns Sy on Ns | Ns Sy off 86 By default the NFS server provides delegations to clients. 87 The user can turn off delegations for all exported filesystems by setting this 88 variable to 89 .Li off . 90 This variable only applies to NFS Version 4. 91 .It Sy nfsmapid_domain Ns = Ns Op Ar string 92 By default, the 93 .Nm nfsmapid 94 uses the DNS domain of the system. 95 This setting overrides the default. 96 This domain is used for identifying user and group attribute strings in the NFS 97 Version 4 protocol. 98 Clients and servers must match with this domain for operation to proceed 99 normally. 100 This variable only applies to NFS Version 4. 101 See 102 .Sx Setting nfsmapid_domain 103 below for further details. 104 .It Sy max_connections Ns = Ns Ar num 105 Sets the maximum number of concurrent, connection-oriented connections. 106 The default is 107 .Li -1 108 .Pq unlimited . 109 Equivalent to the 110 .Fl c 111 option in 112 .Nm nfsd . 113 .It Sy listen_backlog Ns = Ns Ar num 114 Set connection queue length for the NFS over a connection-oriented transport. 115 The default value is 116 .Li 32 , 117 meaning 32 entries in the queue. 118 Equivalent to the 119 .Fl l 120 option in 121 .Nm nfsd . 122 .It Sy protocol Ns = Ns Op Sy all Ns | Ns Ar protocol 123 Start 124 .Nm nfsd 125 over the specified protocol only. 126 Equivalent to the 127 .Fl p 128 option in 129 .Nm nfsd . 130 .Sy all 131 is equivalent to 132 .Fl a 133 on the 134 .Nm nfsd 135 command line. 136 Mutually exlusive of 137 .Sy device . 138 For the UDP protocol, only version 2 and version 3 service is established. 139 NFS Version 4 is not supported for the UDP protocol. 140 .It Sy device Ns = Ns Op Ar devname 141 Start NFS daemon for the transport specified by the given device only. 142 Equivalent to the 143 .Fl t 144 option in 145 .Nm nfsd . 146 Mutually exclusive of 147 .Sy protocol . 148 .It Sy servers Ns = Ns Ar num 149 Maximum number of concurrent NFS requests. 150 Equivalent to last numeric argument on the 151 .Nm nfsd 152 command line. 153 The default is 154 .Li 1024 . 155 .It Sy lockd_listen_backlog Ns = Ns Ar num 156 Set connection queue length for 157 .Nm lockd 158 over a connection-oriented transport. 159 The default and minimum value is 160 .Li 32 . 161 .It Sy lockd_servers Ns = Ns Ar num 162 Maximum number of concurrent 163 .Nm lockd 164 requests. 165 The default is 256. 166 .It Sy lockd_retransmit_timeout Ns = Ns Ar num 167 Retransmit timeout, in seconds, before 168 .Nm lockd 169 retries. 170 The default is 171 .Li 5 . 172 .It Sy grace_period Ns = Ns Ar num 173 Grace period, in seconds, that all clients 174 .Pq both NLM and NFSv4 175 have to reclaim locks after a server reboot. 176 This parameter also controls the NFSv4 lease interval. 177 The default is 178 .Li 90 . 179 .It Sy mountd_listen_backlog Ns = Ns Ar num 180 Set the connection queue length for 181 .Nm mountd 182 over a connection-oriented transport. 183 The default value is 184 .Li 64 . 185 .It Sy mountd_max_threads Ns = Ns Ar num 186 Maximum number of threads for 187 .Nm mountd . 188 The default value is 189 .Li 16 . 190 .El 191 .Ss Setting nfsmapid_domain 192 As described above, the setting for 193 .Sy nfsmapid_domain 194 overrides the domain used by 195 .Xr nfsmapid 1M 196 for building and comparing outbound and inbound attribute strings, respectively. 197 This setting overrides any other mechanism for setting the NFSv4 domain. 198 In the absence of a 199 .Sy nfsmapid_domain 200 setting, the 201 .Xr nfsmapid 1M 202 daemon determines the NFSv4 domain as follows: 203 .Bl -bullet 204 .It 205 If a properly configured 206 .Pa /etc/resolv.conf 207 .Po see 208 .Xr resolv.conf 4 209 .Pc 210 exists, 211 .Nm nfsmapid 212 queries specified nameserver(s) for the domain. 213 .It 214 If a properly configured 215 .Pa /etc/resolv.conf 216 .Po see 217 .Xr resolv.conf 4 218 .Pc 219 exists, but the queried nameserver does not have a proper record of the domain 220 name, 221 .Nm nfsmapid 222 attempts to obtain the domain name through the BIND interface 223 .Po see 224 .Xr resolver 3RESOLV 225 .Pc . 226 .It 227 If no 228 .Pa /etc/resolv.conf 229 exists, 230 .Nm nfsmapid 231 falls back on using the configured domain name 232 .Po see 233 .Xr domainname 1M 234 .Pc , 235 which is returned with the leading domain suffix removed. 236 For example, for 237 .Li widgets.sales.acme.com , 238 .Li sales.acme.com 239 is returned. 240 .It 241 If 242 .Pa /etc/resolv.conf 243 does not exist, no domain name has been configured 244 .Po or no 245 .Pa /etc/defaultdomain 246 exists 247 .Pc , 248 .Nm nfsmapid 249 falls back on obtaining the domain name from the host name, if the host name 250 contains a fully qualified domain name 251 .Pq FQDN . 252 .El 253 .Pp 254 If a domainname is still not obtained following all of the preceding steps, 255 .Nm nfsmapid 256 will have no domain configured. 257 This results in the following behavior: 258 .Bl -bullet 259 .It 260 Outbound 261 .Qq owner 262 and 263 .Qq owner_group 264 attribute strings are encoded as literal id's. 265 For example, the UID 12345 is encoded as 266 .Li 12345 . 267 .It 268 .Nm nfsmapid 269 ignores the 270 .Qq domain 271 portion of the inbound attribute string and performs name service lookups only 272 for the user or group. 273 If the user/group exists in the local system name service databases, then the 274 proper uid/gid will be mapped even when no domain has been configured. 275 .Pp 276 This behavior implies that the same administrative user/group domain exists 277 between NFSv4 client and server (that is, the same uid/gid's for users/groups 278 on both client and server). 279 In the case of overlapping id spaces, the inbound attribute string could 280 potentially be mapped to the wrong id. 281 However, this is not functionally different from mapping the inbound string to 282 .Sy nobody , 283 yet provides greater flexibility. 284 .El 285 .Sh SEE ALSO 286 .Xr lockd 1M , 287 .Xr mount_nfs 1M , 288 .Xr mountd 1M , 289 .Xr nfsd 1M , 290 .Xr nfsmapid 1M , 291 .Xr sharectl 1M , 292 .Xr smf 5