xref: /freebsd/sbin/mount_nfs/mount_nfs.8 (revision 884a2a699669ec61e2366e3e358342dbc94be24a)
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 May 3, 2011
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
52The
53.Nm
54utility calls the
55.Xr nmount 2
56system call to prepare and graft a remote NFS file system
57.Pq Ar rhost : Ns Ar path
58on to the file system tree at the point
59.Ar node .
60This command is normally executed by
61.Xr mount 8 .
62It implements the mount protocol as described in RFC 1094, Appendix A and
63.%T "NFS: Network File System Version 3 Protocol Specification" ,
64Appendix I.
65.Pp
66If the file system type is specified as ``oldnfs'', which implies this
67command is run as ``mount_oldnfs'', then it forces use of the old NFS
68client, which does not support the
69.Cm nfsv4
70option.
71.Pp
72By default,
73.Nm
74keeps retrying until the mount succeeds.
75This behaviour is intended for file systems listed in
76.Xr fstab 5
77that are critical to the boot process.
78For non-critical file systems, the
79.Cm bg
80and
81.Cm retrycnt
82options provide mechanisms to prevent the boot process from hanging
83if the server is unavailable.
84.Pp
85If the server becomes unresponsive while an NFS file system is
86mounted, any new or outstanding file operations on that file system
87will hang uninterruptibly until the server comes back.
88To modify this default behaviour, see the
89.Cm intr
90and
91.Cm soft
92options.
93.Pp
94The options are:
95.Bl -tag -width indent
96.It Fl o
97Options are specified with a
98.Fl o
99flag followed by a comma separated string of options.
100See the
101.Xr mount 8
102man page for possible options and their meanings.
103The 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
109When attributes of files are cached, a timeout calculated to determine
110whether a given cache entry has expired.
111These four values determine the upper and lower bounds of the timeouts for
112.Dq directory
113attributes and
114.Dq regular
115(ie: everything else).
116The default values are 3 -> 60 seconds
117for regular files, and 30 -> 60 seconds for directories.
118The algorithm to calculate the timeout is based on the age of the file.
119The older the file,
120the longer the cache is considered valid, subject to the limits above.
121.It Cm bg
122If an initial attempt to contact the server fails, fork off a child to keep
123trying the mount in the background.
124Useful for
125.Xr fstab 5 ,
126where the file system mount is not critical to multiuser operation.
127.It Cm deadthresh Ns = Ns Aq Ar value
128Set the
129.Dq "dead server threshold"
130to the specified number of round trip timeout intervals before a
131.Dq "server not responding"
132message is displayed.
133.It Cm dumbtimer
134Turn off the dynamic retransmit timeout estimator.
135This may be useful for UDP mounts that exhibit high retry rates,
136since it is possible that the dynamically estimated timeout interval is too
137short.
138.It Cm fg
139Same as not specifying
140.Cm bg .
141.It Cm hard
142Same as not specifying
143.Cm soft .
144.It Cm intr
145Make the mount interruptible, which implies that file system calls that
146are delayed due to an unresponsive server will fail with EINTR when a
147termination signal is posted for the process.
148.It Cm maxgroups Ns = Ns Aq Ar value
149Set the maximum size of the group list for the credentials to the
150specified value.
151This should be used for mounts on old servers that cannot handle a
152group list size of 16, as specified in RFC 1057.
153Try 8, if users in a lot of groups cannot get response from the mount
154point.
155.It Cm mntudp
156Force the mount protocol to use UDP transport, even for TCP NFS mounts.
157(Necessary for some old
158.Bx
159servers.)
160.It Cm negnametimeo Ns = Ns Aq Ar value
161Override the default of NFS_DEFAULT_NEGNAMETIMEO for the timeout (in seconds)
162for negative name cache entries. If this is set to 0 it disables negative
163name caching for the mount point.
164.It Cm nfsv2
165Use the NFS Version 2 protocol (the default is to try version 3 first
166then version 2).
167Note that NFS version 2 has a file size limit of 2 gigabytes.
168.It Cm nfsv3
169Use the NFS Version 3 protocol.
170.It Cm nfsv4
171Use the NFS Version 4 protocol.
172This option will force the mount to use
173TCP transport.
174.It Cm noconn
175For UDP mount points, do not do a
176.Xr connect 2 .
177This must be used if the server does not reply to requests from the standard
178NFS port number 2049 or replies to requests using a different IP address
179(which can occur if the server is multi-homed).
180Setting the
181.Va vfs.nfs.nfs_ip_paranoia
182sysctl to 0 will make this option the default.
183.It Cm nocto
184Normally, NFS clients maintain the close-to-open cache coherency.
185This works by flushing at close time and checking at open time.
186Checking at open time is implemented by getting attributes from
187the server and purging the data cache if they do not match
188attributes cached by the client.
189.Pp
190This option disables checking at open time.
191It may improve performance for read-only mounts,
192but should only be used if the data on the server changes rarely.
193Be sure to understand the consequences before enabling this option.
194.It Cm noinet4 , noinet6
195Disables
196.Dv AF_INET
197or
198.Dv AF_INET6
199connections.
200Useful for hosts that have
201both an A record and an AAAA record for the same name.
202.It Cm nolockd
203Do
204.Em not
205forward
206.Xr fcntl 2
207locks over the wire.
208All locks will be local and not seen by the server
209and likewise not seen by other NFS clients.
210This removes the need to run the
211.Xr rpcbind 8
212service and the
213.Xr rpc.statd 8
214and
215.Xr rpc.lockd 8
216servers on the client.
217Note that this option will only be honored when performing the
218initial mount, it will be silently ignored if used while updating
219the mount options.
220.It Cm principal
221For the RPCSEC_GSS security flavors, such as krb5, krb5i and krb5p,
222this option sets the name of the host based principal name expected
223by the server. This option overrides the default, which will be
224``nfs@<server-fqdn>'' and should normally be sufficient.
225.It Cm noresvport
226Do
227.Em not
228use a reserved socket port number (see below).
229.It Cm port Ns = Ns Aq Ar port_number
230Use specified port number for NFS requests.
231The default is to query the portmapper for the NFS port.
232.It Cm rdirplus
233Used with NFSV3 to specify that the \fBReaddirPlus\fR RPC should
234be used.
235For NFSV4, setting this option has a similar effect, in that it will make
236the Readdir Operation get more attributes.
237This option reduces RPC traffic for cases such as
238.Dq "ls -l" ,
239but tends to flood the attribute and name caches with prefetched entries.
240Try this option and see whether performance improves or degrades.
241Probably
242most useful for client to server network interconnects with a large bandwidth
243times delay product.
244.It Cm readahead Ns = Ns Aq Ar value
245Set the read-ahead count to the specified value.
246This may be in the range of 0 - 4, and determines how many blocks
247will be read ahead when a large file is being read sequentially.
248Trying a value greater than 1 for this is suggested for
249mounts with a large bandwidth * delay product.
250.It Cm readdirsize Ns = Ns Aq Ar value
251Set the readdir read size to the specified value.
252The value should normally
253be a multiple of
254.Dv DIRBLKSIZ
255that is <= the read size for the mount.
256.It Cm resvport
257Use a reserved socket port number.
258This flag is obsolete, and only retained for compatibility reasons.
259Reserved port numbers are used by default now.
260(For the rare case where the client has a trusted root account
261but untrustworthy users and the network cables are in secure areas this does
262help, but for normal desktop clients this does not apply.)
263.It Cm retrans Ns = Ns Aq Ar value
264Set the retransmit timeout count for soft mounts to the specified value.
265.It Cm retrycnt Ns = Ns Aq Ar count
266Set the mount retry count to the specified value.
267The default is a retry count of zero, which means to keep retrying
268forever.
269There is a 60 second delay between each attempt.
270.It Cm rsize Ns = Ns Aq Ar value
271Set the read data size to the specified value.
272It should normally be a power of 2 greater than or equal to 1024.
273This should be used for UDP mounts when the
274.Dq "fragments dropped due to timeout"
275value is getting large while actively using a mount point.
276(Use
277.Xr netstat 1
278with the
279.Fl s
280option to see what the
281.Dq "fragments dropped due to timeout"
282value is.)
283.It Cm sec Ns = Ns Aq Ar flavor
284This option specifies what security flavor should be used for the mount.
285Currently, they are:
286.Bd -literal
287krb5 -  Use KerberosV authentication
288krb5i - Use KerberosV authentication and
289        apply integrity checksums to RPCs
290krb5p - Use KerberosV authentication and
291        encrypt the RPC data
292sys -   The default AUTH_SYS, which uses a
293        uid + gid list authenticator
294.Ed
295.It Cm soft
296A soft mount, which implies that file system calls will fail
297after
298.Ar retrycnt
299round trip timeout intervals.
300.It Cm tcp
301Use TCP transport.
302This is the default option, as it provides for increased reliability on both
303LAN and WAN configurations compared to UDP.
304Some old NFS servers do not support this method; UDP mounts may be required
305for interoperability.
306.It Cm timeout Ns = Ns Aq Ar value
307Set the initial retransmit timeout to the specified value.
308May be useful for fine tuning UDP mounts over internetworks
309with high packet loss rates or an overloaded server.
310Try increasing the interval if
311.Xr nfsstat 1
312shows high retransmit rates while the file system is active or reducing the
313value if there is a low retransmit rate but long response delay observed.
314(Normally, the
315.Cm dumbtimer
316option should be specified when using this option to manually
317tune the timeout
318interval.)
319.It Cm udp
320Use UDP transport.
321.It Cm wsize Ns = Ns Aq Ar value
322Set the write data size to the specified value.
323Ditto the comments w.r.t.\& the
324.Cm rsize
325option, but using the
326.Dq "fragments dropped due to timeout"
327value on the server instead of the client.
328Note that both the
329.Cm rsize
330and
331.Cm wsize
332options should only be used as a last ditch effort at improving performance
333when mounting servers that do not support TCP mounts.
334.El
335.El
336.Sh COMPATIBILITY
337The following command line flags are equivalent to
338.Fl o
339named options and are supported for compatibility with older
340installations.
341.Bl -tag -width indent
342.It Fl 2
343Same as
344.Fl o Cm nfsv2
345.It Fl 3
346Same as
347.Fl o Cm nfsv3
348.It Fl D
349Same as
350.Fl o Cm deadthresh
351.It Fl I
352Same as
353.Fl o Cm readdirsize Ns = Ns Aq Ar value
354.It Fl L
355Same as
356.Fl o Cm nolockd
357.It Fl N
358Same as
359.Fl o Cm noresvport
360.It Fl P
361Use a reserved socket port number.
362This flag is obsolete, and only retained for compatibility reasons.
363(For the rare case where the client has a trusted root account
364but untrustworthy users and the network cables are in secure areas this does
365help, but for normal desktop clients this does not apply.)
366.It Fl R
367Same as
368.Fl o Cm retrycnt Ns = Ns Aq Ar value
369.It Fl T
370Same as
371.Fl o Cm tcp
372.It Fl U
373Same as
374.Fl o Cm mntudp
375.It Fl a
376Same as
377.Fl o Cm readahead Ns = Ns Aq Ar value
378.It Fl b
379Same as
380.Fl o Cm bg
381.It Fl c
382Same as
383.Fl o Cm noconn
384.It Fl d
385Same as
386.Fl o Cm dumbtimer
387.It Fl g
388Same as
389.Fl o Cm maxgroups
390.It Fl i
391Same as
392.Fl o Cm intr
393.It Fl l
394Same as
395.Fl o Cm rdirplus
396.It Fl r
397Same as
398.Fl o Cm rsize Ns = Ns Aq Ar value
399.It Fl s
400Same as
401.Fl o Cm soft
402.It Fl t
403Same as
404.Fl o Cm retransmit Ns = Ns Aq Ar value
405.It Fl w
406Same as
407.Fl o Cm wsize Ns = Ns Aq Ar value
408.It Fl x
409Same as
410.Fl o Cm retrans Ns = Ns Aq Ar value
411.El
412.Sh SEE ALSO
413.Xr nmount 2 ,
414.Xr unmount 2 ,
415.Xr nfsv4 4 ,
416.Xr fstab 5 ,
417.Xr gssd 8 ,
418.Xr mount 8 ,
419.Xr nfsd 8 ,
420.Xr nfsiod 8 ,
421.Xr showmount 8
422.Sh BUGS
423Since nfsv4 performs open/lock operations that have their ordering strictly
424enforced by the server, the options
425.Cm intr
426and
427.Cm soft
428cannot be safely used.
429.Cm hard
430nfsv4 mounts are strongly recommended.
431