]> CyberLeo.Net >> Repos - FreeBSD/stable/10.git/blob - sbin/mount_nfs/mount_nfs.8
MFC r368207,368607:
[FreeBSD/stable/10.git] / sbin / mount_nfs / mount_nfs.8
1 .\" Copyright (c) 1992, 1993, 1994, 1995
2 .\"     The Regents of the University of California.  All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that the following conditions
6 .\" are met:
7 .\" 1. Redistributions of source code must retain the above copyright
8 .\"    notice, this list of conditions and the following disclaimer.
9 .\" 2. Redistributions in binary form must reproduce the above copyright
10 .\"    notice, this list of conditions and the following disclaimer in the
11 .\"    documentation and/or other materials provided with the distribution.
12 .\" 4. Neither the name of the University nor the names of its contributors
13 .\"    may be used to endorse or promote products derived from this software
14 .\"    without specific prior written permission.
15 .\"
16 .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 .\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
26 .\" SUCH DAMAGE.
27 .\"
28 .\"     @(#)mount_nfs.8 8.3 (Berkeley) 3/29/95
29 .\" $FreeBSD$
30 .\"
31 .Dd April 13, 2017
32 .Dt MOUNT_NFS 8
33 .Os
34 .Sh NAME
35 .Nm mount_nfs
36 .Nd mount NFS file systems
37 .Sh SYNOPSIS
38 .Nm
39 .Op Fl 23bcdiLlNPsTU
40 .Op Fl a Ar maxreadahead
41 .Op Fl D Ar deadthresh
42 .Op Fl g Ar maxgroups
43 .Op Fl I Ar readdirsize
44 .Op Fl o Ar options
45 .Op Fl R Ar retrycnt
46 .Op Fl r Ar readsize
47 .Op Fl t Ar timeout
48 .Op Fl w Ar writesize
49 .Op Fl x Ar retrans
50 .Ar rhost : Ns Ar path node
51 .Sh DESCRIPTION
52 The
53 .Nm
54 utility calls the
55 .Xr nmount 2
56 system call to prepare and graft a remote NFS file system
57 .Pq Ar rhost : Ns Ar path
58 on to the file system tree at the point
59 .Ar node .
60 This command is normally executed by
61 .Xr mount 8 .
62 It implements the mount protocol as described in RFC 1094, Appendix A and
63 .%T "NFS: Network File System Version 3 Protocol Specification" ,
64 Appendix I.
65 .Pp
66 If the file system type is specified as ``oldnfs'', which implies this
67 command is run as ``mount_oldnfs'', then it forces use of the old NFS
68 client, which does not support the
69 .Cm nfsv4
70 option.
71 .Pp
72 By default,
73 .Nm
74 keeps retrying until the mount succeeds.
75 This behaviour is intended for file systems listed in
76 .Xr fstab 5
77 that are critical to the boot process.
78 For non-critical file systems, the
79 .Cm bg
80 and
81 .Cm retrycnt
82 options provide mechanisms to prevent the boot process from hanging
83 if the server is unavailable.
84 .Pp
85 If the server becomes unresponsive while an NFS file system is
86 mounted, any new or outstanding file operations on that file system
87 will hang uninterruptibly until the server comes back.
88 To modify this default behaviour, see the
89 .Cm intr
90 and
91 .Cm soft
92 options.
93 .Pp
94 The options are:
95 .Bl -tag -width indent
96 .It Fl o
97 Options are specified with a
98 .Fl o
99 flag followed by a comma separated string of options.
100 See the
101 .Xr mount 8
102 man page for possible options and their meanings.
103 The following NFS specific options are also available:
104 .Bl -tag -width indent
105 .It Cm acregmin Ns = Ns Aq Ar seconds
106 .It Cm acregmax Ns = Ns Aq Ar seconds
107 .It Cm acdirmin Ns = Ns Aq Ar seconds
108 .It Cm acdirmax Ns = Ns Aq Ar seconds
109 When attributes of files are cached, a timeout calculated to determine
110 whether a given cache entry has expired.
111 These four values determine the upper and lower bounds of the timeouts for
112 .Dq directory
113 attributes and
114 .Dq regular
115 (ie: everything else).
116 The default values are 3 -> 60 seconds
117 for regular files, and 30 -> 60 seconds for directories.
118 The algorithm to calculate the timeout is based on the age of the file.
119 The older the file,
120 the longer the cache is considered valid, subject to the limits above.
121 .It Cm actimeo Ns = Ns Aq Ar seconds
122 Set four cache timeouts above to specified value.
123 .It Cm allgssname
124 This option can be used along with
125 .Fl o Cm gssname
126 to specify that all operations should use the host-based initiator
127 credential.
128 This may be used for clients that run system daemons that need to
129 access files on the NFSv4 mounted volume.
130 .It Cm bg
131 If an initial attempt to contact the server fails, fork off a child to keep
132 trying the mount in the background.
133 Useful for
134 .Xr fstab 5 ,
135 where the file system mount is not critical to multiuser operation.
136 .It Cm deadthresh Ns = Ns Aq Ar value
137 Set the
138 .Dq "dead server threshold"
139 to the specified number of round trip timeout intervals before a
140 .Dq "server not responding"
141 message is displayed.
142 .It Cm dumbtimer
143 Turn off the dynamic retransmit timeout estimator.
144 This may be useful for UDP mounts that exhibit high retry rates,
145 since it is possible that the dynamically estimated timeout interval is too
146 short.
147 .It Cm fg
148 Same as not specifying
149 .Cm bg .
150 .It Cm gssname Ns = Ns Aq Ar service-principal-name
151 This option can be used with the KerberosV security flavors for NFSv4 mounts
152 to specify the
153 .Dq "service-principal-name"
154 of a host-based entry in the default
155 keytab file that is used for system operations.
156 It allows the mount to be performed by
157 .Dq "root"
158 and avoids problems with
159 cached credentials for the system operations expiring.
160 The
161 .Dq "service-prinicpal-name"
162 should be specified without instance or domain and is typically
163 .Dq "host" ,
164 .Dq "nfs"
165 or
166 .Dq "root" .
167 .It Cm hard
168 Same as not specifying
169 .Cm soft .
170 .It Cm intr
171 Make the mount interruptible, which implies that file system calls that
172 are delayed due to an unresponsive server will fail with EINTR when a
173 termination signal is posted for the process.
174 .It Cm maxgroups Ns = Ns Aq Ar value
175 Set the maximum size of the group list for the credentials to the
176 specified value.
177 This should be used for mounts on old servers that cannot handle a
178 group list size of 16, as specified in RFC 1057.
179 Try 8, if users in a lot of groups cannot get response from the mount
180 point.
181 .It Cm mntudp
182 Force the mount protocol to use UDP transport, even for TCP NFS mounts.
183 (Necessary for some old
184 .Bx
185 servers.)
186 .It Cm nametimeo Ns = Ns Aq Ar value
187 Override the default of NFS_DEFAULT_NAMETIMEO for the timeout (in seconds)
188 for positive name cache entries.
189 If this is set to 0 it disables positive name caching for the mount point.
190 .It Cm negnametimeo Ns = Ns Aq Ar value
191 Override the default of NFS_DEFAULT_NEGNAMETIMEO for the timeout (in seconds)
192 for negative name cache entries. If this is set to 0 it disables negative
193 name caching for the mount point.
194 .It Cm nfsv2
195 Use the NFS Version 2 protocol (the default is to try version 3 first
196 then version 2).
197 Note that NFS version 2 has a file size limit of 2 gigabytes.
198 .It Cm nfsv3
199 Use the NFS Version 3 protocol.
200 .It Cm nfsv4
201 Use the NFS Version 4 protocol.
202 This option will force the mount to use
203 TCP transport.
204 .It Cm minorversion Ns = Ns Aq Ar value
205 Override the default of 0 for the minor version of the NFS Version 4 protocol.
206 The only minor version currently supported is 1.
207 This option is only meaningful when used with the
208 .Cm nfsv4
209 option.
210 .It Cm oneopenown
211 Make a minor version 1 of the NFS Version 4 protocol mount use a single OpenOwner
212 for all Opens.
213 This may be useful for a server with a very low limit on OpenOwners, such as
214 AmazonEFS.
215 It can only be used with an NFSv4.1 mount.
216 It may not work correctly when Delegations are being issued by a server,
217 but note that the AmazonEFS server does not issued delegations at this time.
218 .It Cm pnfs
219 Enable support for parallel NFS (pNFS) for minor version 1 of the
220 NFS Version 4 protocol.
221 This option is only meaningful when used with the
222 .Cm minorversion
223 option.
224 .It Cm noac
225 Disable attribute caching.
226 .It Cm noconn
227 For UDP mount points, do not do a
228 .Xr connect 2 .
229 This must be used if the server does not reply to requests from the standard
230 NFS port number 2049 or replies to requests using a different IP address
231 (which can occur if the server is multi-homed).
232 Setting the
233 .Va vfs.nfs.nfs_ip_paranoia
234 sysctl to 0 will make this option the default.
235 .It Cm nocto
236 Normally, NFS clients maintain the close-to-open cache coherency.
237 This works by flushing at close time and checking at open time.
238 Checking at open time is implemented by getting attributes from
239 the server and purging the data cache if they do not match
240 attributes cached by the client.
241 .Pp
242 This option disables checking at open time.
243 It may improve performance for read-only mounts,
244 but should only be used if the data on the server changes rarely.
245 Be sure to understand the consequences before enabling this option.
246 .It Cm noinet4 , noinet6
247 Disables
248 .Dv AF_INET
249 or
250 .Dv AF_INET6
251 connections.
252 Useful for hosts that have
253 both an A record and an AAAA record for the same name.
254 .It Cm nolockd
255 Do
256 .Em not
257 forward
258 .Xr fcntl 2
259 locks over the wire.
260 All locks will be local and not seen by the server
261 and likewise not seen by other NFS clients.
262 This removes the need to run the
263 .Xr rpcbind 8
264 service and the
265 .Xr rpc.statd 8
266 and
267 .Xr rpc.lockd 8
268 servers on the client.
269 Note that this option will only be honored when performing the
270 initial mount, it will be silently ignored if used while updating
271 the mount options.
272 .It Cm noncontigwr
273 This mount option allows the NFS client to
274 combine non-contiguous byte ranges being written
275 such that the dirty byte range becomes a superset of the bytes
276 that are dirty.
277 This reduces the number of writes significantly for software
278 builds.
279 The merging of byte ranges isn't done if the file has been file
280 locked, since most applications modifying a file from multiple
281 clients will use file locking.
282 As such, this option could result in a corrupted file for the
283 rare case of an application modifying the file from multiple
284 clients concurrently without using file locking.
285 .It Cm principal
286 For the RPCSEC_GSS security flavors, such as krb5, krb5i and krb5p,
287 this option sets the name of the host based principal name expected
288 by the server. This option overrides the default, which will be
289 ``nfs@<server-fqdn>'' and should normally be sufficient.
290 .It Cm noresvport
291 Do
292 .Em not
293 use a reserved socket port number (see below).
294 .It Cm port Ns = Ns Aq Ar port_number
295 Use specified port number for NFS requests.
296 The default is to query the portmapper for the NFS port.
297 .It Cm proto Ns = Ns Aq Ar protocol
298 Specify transport protocol version to use.
299 Currently, they are:
300 .Bd -literal
301 udp -   Use UDP over IPv4
302 tcp -   Use TCP over IPv4
303 udp6 -  Use UDP over IPv6
304 tcp6 -  Use TCP over IPv6
305 .Ed
306 .It Cm rdirplus
307 Used with NFSV3 to specify that the \fBReaddirPlus\fR RPC should
308 be used.
309 For NFSV4, setting this option has a similar effect, in that it will make
310 the Readdir Operation get more attributes.
311 This option reduces RPC traffic for cases such as
312 .Dq "ls -l" ,
313 but tends to flood the attribute and name caches with prefetched entries.
314 Try this option and see whether performance improves or degrades.
315 Probably
316 most useful for client to server network interconnects with a large bandwidth
317 times delay product.
318 .It Cm readahead Ns = Ns Aq Ar value
319 Set the read-ahead count to the specified value.
320 This may be in the range of 0 - 4, and determines how many blocks
321 will be read ahead when a large file is being read sequentially.
322 Trying a value greater than 1 for this is suggested for
323 mounts with a large bandwidth * delay product.
324 .It Cm readdirsize Ns = Ns Aq Ar value
325 Set the readdir read size to the specified value.
326 The value should normally
327 be a multiple of
328 .Dv DIRBLKSIZ
329 that is <= the read size for the mount.
330 .It Cm resvport
331 Use a reserved socket port number.
332 This flag is obsolete, and only retained for compatibility reasons.
333 Reserved port numbers are used by default now.
334 (For the rare case where the client has a trusted root account
335 but untrustworthy users and the network cables are in secure areas this does
336 help, but for normal desktop clients this does not apply.)
337 .It Cm retrans Ns = Ns Aq Ar value
338 Set the retransmit timeout count for soft mounts to the specified value.
339 .It Cm retrycnt Ns = Ns Aq Ar count
340 Set the mount retry count to the specified value.
341 The default is a retry count of zero, which means to keep retrying
342 forever.
343 There is a 60 second delay between each attempt.
344 .It Cm rsize Ns = Ns Aq Ar value
345 Set the read data size to the specified value.
346 It should normally be a power of 2 greater than or equal to 1024.
347 This should be used for UDP mounts when the
348 .Dq "fragments dropped due to timeout"
349 value is getting large while actively using a mount point.
350 (Use
351 .Xr netstat 1
352 with the
353 .Fl s
354 option to see what the
355 .Dq "fragments dropped due to timeout"
356 value is.)
357 .It Cm sec Ns = Ns Aq Ar flavor
358 This option specifies what security flavor should be used for the mount.
359 Currently, they are:
360 .Bd -literal
361 krb5 -  Use KerberosV authentication
362 krb5i - Use KerberosV authentication and
363         apply integrity checksums to RPCs
364 krb5p - Use KerberosV authentication and
365         encrypt the RPC data
366 sys -   The default AUTH_SYS, which uses a
367         uid + gid list authenticator
368 .Ed
369 .It Cm soft
370 A soft mount, which implies that file system calls will fail
371 after
372 .Ar retrycnt
373 round trip timeout intervals.
374 .It Cm tcp
375 Use TCP transport.
376 This is the default option, as it provides for increased reliability on both
377 LAN and WAN configurations compared to UDP.
378 Some old NFS servers do not support this method; UDP mounts may be required
379 for interoperability.
380 .It Cm timeout Ns = Ns Aq Ar value
381 Set the initial retransmit timeout to the specified value,
382 expressed in tenths of a second.
383 May be useful for fine tuning UDP mounts over internetworks
384 with high packet loss rates or an overloaded server.
385 Try increasing the interval if
386 .Xr nfsstat 1
387 shows high retransmit rates while the file system is active or reducing the
388 value if there is a low retransmit rate but long response delay observed.
389 (Normally, the
390 .Cm dumbtimer
391 option should be specified when using this option to manually
392 tune the timeout
393 interval.)
394 .It Cm timeo Ns = Ns Aq Ar value
395 Alias for
396 .Cm timeout .
397 .It Cm udp
398 Use UDP transport.
399 .It Cm vers Ns = Ns Aq Ar vers_number
400 Use the specified version number for NFS requests.
401 See the
402 .Cm nfsv2 ,
403 .Cm nfsv3 ,
404 and 
405 .Cm nfsv4
406 options for details.
407 .It Cm wcommitsize Ns = Ns Aq Ar value
408 Set the maximum pending write commit size to the specified value.
409 This determines the maximum amount of pending write data that the NFS
410 client is willing to cache for each file.
411 .It Cm wsize Ns = Ns Aq Ar value
412 Set the write data size to the specified value.
413 Ditto the comments w.r.t.\& the
414 .Cm rsize
415 option, but using the
416 .Dq "fragments dropped due to timeout"
417 value on the server instead of the client.
418 Note that both the
419 .Cm rsize
420 and
421 .Cm wsize
422 options should only be used as a last ditch effort at improving performance
423 when mounting servers that do not support TCP mounts.
424 .El
425 .El
426 .Sh COMPATIBILITY
427 The following command line flags are equivalent to
428 .Fl o
429 named options and are supported for compatibility with older
430 installations.
431 .Bl -tag -width indent
432 .It Fl 2
433 Same as
434 .Fl o Cm nfsv2
435 .It Fl 3
436 Same as
437 .Fl o Cm nfsv3
438 .It Fl D
439 Same as
440 .Fl o Cm deadthresh
441 .It Fl I
442 Same as
443 .Fl o Cm readdirsize Ns = Ns Aq Ar value
444 .It Fl L
445 Same as
446 .Fl o Cm nolockd
447 .It Fl N
448 Same as
449 .Fl o Cm noresvport
450 .It Fl P
451 Use a reserved socket port number.
452 This flag is obsolete, and only retained for compatibility reasons.
453 (For the rare case where the client has a trusted root account
454 but untrustworthy users and the network cables are in secure areas this does
455 help, but for normal desktop clients this does not apply.)
456 .It Fl R
457 Same as
458 .Fl o Cm retrycnt Ns = Ns Aq Ar value
459 .It Fl T
460 Same as
461 .Fl o Cm tcp
462 .It Fl U
463 Same as
464 .Fl o Cm mntudp
465 .It Fl a
466 Same as
467 .Fl o Cm readahead Ns = Ns Aq Ar value
468 .It Fl b
469 Same as
470 .Fl o Cm bg
471 .It Fl c
472 Same as
473 .Fl o Cm noconn
474 .It Fl d
475 Same as
476 .Fl o Cm dumbtimer
477 .It Fl g
478 Same as
479 .Fl o Cm maxgroups
480 .It Fl i
481 Same as
482 .Fl o Cm intr
483 .It Fl l
484 Same as
485 .Fl o Cm rdirplus
486 .It Fl r
487 Same as
488 .Fl o Cm rsize Ns = Ns Aq Ar value
489 .It Fl s
490 Same as
491 .Fl o Cm soft
492 .It Fl t
493 Same as
494 .Fl o Cm retransmit Ns = Ns Aq Ar value
495 .It Fl w
496 Same as
497 .Fl o Cm wsize Ns = Ns Aq Ar value
498 .It Fl x
499 Same as
500 .Fl o Cm retrans Ns = Ns Aq Ar value
501 .El
502 .Pp
503 The following
504 .Fl o
505 named options are equivalent to other
506 .Fl o
507 named options and are supported for compatibility with other
508 operating systems (e.g., Linux, Solaris, and OSX) to ease usage of
509 .Xr autofs 5
510 support.
511 .Bl -tag -width indent
512 .It Fl o Cm vers Ns = Ns 2
513 Same as
514 .Fl o Cm nfsv2
515 .It Fl o Cm vers Ns = Ns 3
516 Same as
517 .Fl o Cm nfsv3
518 .It Fl o Cm vers Ns = Ns 4
519 Same as
520 .Fl o Cm nfsv4
521 .El
522 .Sh SEE ALSO
523 .Xr nmount 2 ,
524 .Xr unmount 2 ,
525 .Xr nfsv4 4 ,
526 .Xr fstab 5 ,
527 .Xr gssd 8 ,
528 .Xr mount 8 ,
529 .Xr nfsd 8 ,
530 .Xr nfsiod 8 ,
531 .Xr showmount 8
532 .Sh BUGS
533 Since nfsv4 performs open/lock operations that have their ordering strictly
534 enforced by the server, the options
535 .Cm intr
536 and
537 .Cm soft
538 cannot be safely used.
539 .Cm hard
540 nfsv4 mounts are strongly recommended.