14a4c5285SPeter Wemm.\" Copyright (c) 1992, 1993, 1994, 1995 28fae3551SRodney W. Grimes.\" The Regents of the University of California. All rights reserved. 38fae3551SRodney W. Grimes.\" 48fae3551SRodney W. Grimes.\" Redistribution and use in source and binary forms, with or without 58fae3551SRodney W. Grimes.\" modification, are permitted provided that the following conditions 68fae3551SRodney W. Grimes.\" are met: 78fae3551SRodney W. Grimes.\" 1. Redistributions of source code must retain the above copyright 88fae3551SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer. 98fae3551SRodney W. Grimes.\" 2. Redistributions in binary form must reproduce the above copyright 108fae3551SRodney W. Grimes.\" notice, this list of conditions and the following disclaimer in the 118fae3551SRodney W. Grimes.\" documentation and/or other materials provided with the distribution. 12fbbd9655SWarner Losh.\" 3. Neither the name of the University nor the names of its contributors 138fae3551SRodney W. Grimes.\" may be used to endorse or promote products derived from this software 148fae3551SRodney W. Grimes.\" without specific prior written permission. 158fae3551SRodney W. Grimes.\" 168fae3551SRodney W. Grimes.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 178fae3551SRodney W. Grimes.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 188fae3551SRodney W. Grimes.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 198fae3551SRodney W. Grimes.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 208fae3551SRodney W. Grimes.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 218fae3551SRodney W. Grimes.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 228fae3551SRodney W. Grimes.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 238fae3551SRodney W. Grimes.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 248fae3551SRodney W. Grimes.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 258fae3551SRodney W. Grimes.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 268fae3551SRodney W. Grimes.\" SUCH DAMAGE. 278fae3551SRodney W. Grimes.\" 284a4c5285SPeter Wemm.\" @(#)mount_nfs.8 8.3 (Berkeley) 3/29/95 29a7475cf4SRuslan Ermilov.\" 30*3ddd961dSBenedict Reuschling.Dd October 8, 2023 318fae3551SRodney W. Grimes.Dt MOUNT_NFS 8 329fe48c6eSRuslan Ermilov.Os 338fae3551SRodney W. Grimes.Sh NAME 348fae3551SRodney W. Grimes.Nm mount_nfs 35a7475cf4SRuslan Ermilov.Nd mount NFS file systems 368fae3551SRodney W. Grimes.Sh SYNOPSIS 377c7fb079SRuslan Ermilov.Nm 3886ce6a83SRobert Watson.Op Fl 23bcdiLlNPsTU 398fae3551SRodney W. Grimes.Op Fl a Ar maxreadahead 408d646af5SRuslan Ermilov.Op Fl D Ar deadthresh 418fae3551SRodney W. Grimes.Op Fl g Ar maxgroups 428d646af5SRuslan Ermilov.Op Fl I Ar readdirsize 438fae3551SRodney W. Grimes.Op Fl o Ar options 448d646af5SRuslan Ermilov.Op Fl R Ar retrycnt 458fae3551SRodney W. Grimes.Op Fl r Ar readsize 468fae3551SRodney W. Grimes.Op Fl t Ar timeout 478fae3551SRodney W. Grimes.Op Fl w Ar writesize 488fae3551SRodney W. Grimes.Op Fl x Ar retrans 49d0353b83SRuslan Ermilov.Ar rhost : Ns Ar path node 508fae3551SRodney W. Grimes.Sh DESCRIPTION 518fae3551SRodney W. GrimesThe 5246fc8f78SPhilippe Charnier.Nm 53e1205e80SPhilippe Charnierutility calls the 540c269d1fSCraig Rodrigues.Xr nmount 2 55a7475cf4SRuslan Ermilovsystem call to prepare and graft a remote NFS file system 56d0353b83SRuslan Ermilov.Pq Ar rhost : Ns Ar path 578fae3551SRodney W. Grimeson to the file system tree at the point 588fae3551SRodney W. Grimes.Ar node . 598fae3551SRodney W. GrimesThis command is normally executed by 608fae3551SRodney W. Grimes.Xr mount 8 . 61547a4dbaSRick MacklemFor NFSv2 and NFSv3, 62547a4dbaSRick Macklemit implements the mount protocol as described in RFC 1094, Appendix A and 63547a4dbaSRick MacklemRFC 1813, Appendix I. 64547a4dbaSRick MacklemFor NFSv4, it uses the NFSv4 protocol as described in RFC 7530, RFC 5661 and 65547a4dbaSRick MacklemRFC 7862. 668fae3551SRodney W. Grimes.Pp 672bc53e11SIan DowseBy default, 682bc53e11SIan Dowse.Nm 692bc53e11SIan Dowsekeeps retrying until the mount succeeds. 702bc53e11SIan DowseThis behaviour is intended for file systems listed in 712bc53e11SIan Dowse.Xr fstab 5 722bc53e11SIan Dowsethat are critical to the boot process. 732bc53e11SIan DowseFor non-critical file systems, the 744b5bc283SCraig Rodrigues.Cm bg 752bc53e11SIan Dowseand 764b5bc283SCraig Rodrigues.Cm retrycnt 774b5bc283SCraig Rodriguesoptions provide mechanisms to prevent the boot process from hanging 782bc53e11SIan Dowseif the server is unavailable. 792bc53e11SIan Dowse.Pp 802bc53e11SIan DowseIf the server becomes unresponsive while an NFS file system is 812bc53e11SIan Dowsemounted, any new or outstanding file operations on that file system 822bc53e11SIan Dowsewill hang uninterruptibly until the server comes back. 832bc53e11SIan DowseTo modify this default behaviour, see the 844b5bc283SCraig Rodrigues.Cm intr 852bc53e11SIan Dowseand 864b5bc283SCraig Rodrigues.Cm soft 874b5bc283SCraig Rodriguesoptions. 882bc53e11SIan Dowse.Pp 898fae3551SRodney W. GrimesThe options are: 908fae3551SRodney W. Grimes.Bl -tag -width indent 914b5bc283SCraig Rodrigues.It Fl o 924b5bc283SCraig RodriguesOptions are specified with a 934b5bc283SCraig Rodrigues.Fl o 944b5bc283SCraig Rodriguesflag followed by a comma separated string of options. 954b5bc283SCraig RodriguesSee the 964b5bc283SCraig Rodrigues.Xr mount 8 974b5bc283SCraig Rodriguesman page for possible options and their meanings. 984b5bc283SCraig RodriguesThe following NFS specific options are also available: 994b5bc283SCraig Rodrigues.Bl -tag -width indent 1004b5bc283SCraig Rodrigues.It Cm acregmin Ns = Ns Aq Ar seconds 1014b5bc283SCraig Rodrigues.It Cm acregmax Ns = Ns Aq Ar seconds 1024b5bc283SCraig Rodrigues.It Cm acdirmin Ns = Ns Aq Ar seconds 1034b5bc283SCraig Rodrigues.It Cm acdirmax Ns = Ns Aq Ar seconds 1044b5bc283SCraig RodriguesWhen attributes of files are cached, a timeout calculated to determine 1054b5bc283SCraig Rodrigueswhether a given cache entry has expired. 1064b5bc283SCraig RodriguesThese four values determine the upper and lower bounds of the timeouts for 1074b5bc283SCraig Rodrigues.Dq directory 1084b5bc283SCraig Rodriguesattributes and 1094b5bc283SCraig Rodrigues.Dq regular 1104b5bc283SCraig Rodrigues(ie: everything else). 1114b5bc283SCraig RodriguesThe default values are 3 -> 60 seconds 1124b5bc283SCraig Rodriguesfor regular files, and 30 -> 60 seconds for directories. 1134b5bc283SCraig RodriguesThe algorithm to calculate the timeout is based on the age of the file. 1144b5bc283SCraig RodriguesThe older the file, 1154b5bc283SCraig Rodriguesthe longer the cache is considered valid, subject to the limits above. 1165a06ac35SEdward Tomasz Napierala.It Cm actimeo Ns = Ns Aq Ar seconds 1175a06ac35SEdward Tomasz NapieralaSet four cache timeouts above to specified value. 118b54de212SRick Macklem.It Cm allgssname 119b54de212SRick MacklemThis option can be used along with 120b54de212SRick Macklem.Fl o Cm gssname 121b54de212SRick Macklemto specify that all operations should use the host-based initiator 122b54de212SRick Macklemcredential. 123b54de212SRick MacklemThis may be used for clients that run system daemons that need to 124b54de212SRick Macklemaccess files on the NFSv4 mounted volume. 1254b5bc283SCraig Rodrigues.It Cm bg 1264b5bc283SCraig RodriguesIf an initial attempt to contact the server fails, fork off a child to keep 1274b5bc283SCraig Rodriguestrying the mount in the background. 1284b5bc283SCraig RodriguesUseful for 1294b5bc283SCraig Rodrigues.Xr fstab 5 , 1304b5bc283SCraig Rodrigueswhere the file system mount is not critical to multiuser operation. 13108a8d16cSRick Macklem.It Cm bgnow 13208a8d16cSRick MacklemLike 13308a8d16cSRick Macklem.Cm bg , 13408a8d16cSRick Macklemfork off a child to keep trying the mount in the background, 13508a8d16cSRick Macklembut do not attempt to mount in the foreground first. 13608a8d16cSRick MacklemThis eliminates a 13708a8d16cSRick Macklem60+ second timeout when the server is not responding. 13808a8d16cSRick MacklemUseful for speeding up the boot process of a client when the server is 13908a8d16cSRick Macklemlikely to be unavailable. 14008a8d16cSRick MacklemThis is often the case for interdependent servers 14108a8d16cSRick Macklemsuch as cross-mounted servers (each of two servers is an NFS client of 14208a8d16cSRick Macklemthe other) and for cluster nodes that must boot before the file servers. 1434b5bc283SCraig Rodrigues.It Cm deadthresh Ns = Ns Aq Ar value 14491196234SPeter WemmSet the 1458fae3551SRodney W. Grimes.Dq "dead server threshold" 14691196234SPeter Wemmto the specified number of round trip timeout intervals before a 14791196234SPeter Wemm.Dq "server not responding" 14891196234SPeter Wemmmessage is displayed. 1494b5bc283SCraig Rodrigues.It Cm dumbtimer 1504b5bc283SCraig RodriguesTurn off the dynamic retransmit timeout estimator. 1514b5bc283SCraig RodriguesThis may be useful for UDP mounts that exhibit high retry rates, 1524b5bc283SCraig Rodriguessince it is possible that the dynamically estimated timeout interval is too 1534b5bc283SCraig Rodriguesshort. 1544b5bc283SCraig Rodrigues.It Cm fg 1554b5bc283SCraig RodriguesSame as not specifying 1564b5bc283SCraig Rodrigues.Cm bg . 157b54de212SRick Macklem.It Cm gssname Ns = Ns Aq Ar service-principal-name 158b54de212SRick MacklemThis option can be used with the KerberosV security flavors for NFSv4 mounts 159b54de212SRick Macklemto specify the 160b54de212SRick Macklem.Dq "service-principal-name" 161b54de212SRick Macklemof a host-based entry in the default 162b54de212SRick Macklemkeytab file that is used for system operations. 163b54de212SRick MacklemIt allows the mount to be performed by 164b54de212SRick Macklem.Dq "root" 165b54de212SRick Macklemand avoids problems with 166b54de212SRick Macklemcached credentials for the system operations expiring. 167b54de212SRick MacklemThe 16861330e49SRick Macklem.Dq "service-principal-name" 169b54de212SRick Macklemshould be specified without instance or domain and is typically 170b54de212SRick Macklem.Dq "host" , 171b54de212SRick Macklem.Dq "nfs" 172b54de212SRick Macklemor 173d511702bSGordon Bergling.Dq "root" , 174d511702bSGordon Berglingalthough the form 175d511702bSGordon Bergling.Sm off 176d511702bSGordon Bergling.Aq Ar service 177d511702bSGordon Bergling@ 178d511702bSGordon Bergling.Aq Ar fqdn 179d511702bSGordon Bergling.Sm on 180d511702bSGordon Berglingcan also be used if the local system's 181d511702bSGordon Bergling.Xr gethostname 3 182d511702bSGordon Berglingvalue does not match the host-based principal in the keytab. 1834b5bc283SCraig Rodrigues.It Cm hard 1844b5bc283SCraig RodriguesSame as not specifying 1854b5bc283SCraig Rodrigues.Cm soft . 1864b5bc283SCraig Rodrigues.It Cm intr 1874b5bc283SCraig RodriguesMake the mount interruptible, which implies that file system calls that 1884b5bc283SCraig Rodriguesare delayed due to an unresponsive server will fail with EINTR when a 1894b5bc283SCraig Rodriguestermination signal is posted for the process. 1909b436906SRick MacklemTo avoid leaving file locks in an indeterminate state on the NFS 1919b436906SRick Macklemserver, it is recommended that the 1929b436906SRick Macklem.Cm nolockd 1939b436906SRick Macklemoption be used with this option. 1944b5bc283SCraig Rodrigues.It Cm maxgroups Ns = Ns Aq Ar value 1954b5bc283SCraig RodriguesSet the maximum size of the group list for the credentials to the 1964b5bc283SCraig Rodriguesspecified value. 1974b5bc283SCraig RodriguesThis should be used for mounts on old servers that cannot handle a 1984b5bc283SCraig Rodriguesgroup list size of 16, as specified in RFC 1057. 1994b5bc283SCraig RodriguesTry 8, if users in a lot of groups cannot get response from the mount 2004b5bc283SCraig Rodriguespoint. 2014b5bc283SCraig Rodrigues.It Cm mntudp 2024b5bc283SCraig RodriguesForce the mount protocol to use UDP transport, even for TCP NFS mounts. 2034b5bc283SCraig Rodrigues(Necessary for some old 2044b5bc283SCraig Rodrigues.Bx 2054b5bc283SCraig Rodriguesservers.) 2060b17c7beSJohn Baldwin.It Cm nametimeo Ns = Ns Aq Ar value 2070b17c7beSJohn BaldwinOverride the default of NFS_DEFAULT_NAMETIMEO for the timeout (in seconds) 2080b17c7beSJohn Baldwinfor positive name cache entries. 2090b17c7beSJohn BaldwinIf this is set to 0 it disables positive name caching for the mount point. 21030607997SRick Macklem.It Cm negnametimeo Ns = Ns Aq Ar value 21130607997SRick MacklemOverride the default of NFS_DEFAULT_NEGNAMETIMEO for the timeout (in seconds) 2120fcf43f6SAllan Judefor negative name cache entries. 2130fcf43f6SAllan JudeIf this is set to 0 it disables negative name caching for the mount point. 2144488c8c3SRick Macklem.It Cm nconnect Ns = Ns Aq Ar value 2154488c8c3SRick MacklemSpecify the number of TCP connections (1-16) to be used 2164488c8c3SRick Macklemfor an NFS Version 4, minor version 1 or 2 mount. 2174488c8c3SRick MacklemMultiple TCP connections can provide more client to server network 2184488c8c3SRick Macklembandwidth for certain network configurations such as: 2194488c8c3SRick Macklem.Bd -literal 2204488c8c3SRick Macklem- Multiple network interfaces that are aggregated together. 2214488c8c3SRick Macklem- A fast network interface that uses multiple queues. 2224488c8c3SRick Macklem.Ed 2234488c8c3SRick Macklem.sp 2244488c8c3SRick MacklemThe first TCP connection will be used for all RPCs that consist 2254488c8c3SRick Macklementirely of small RPC messages. 2264488c8c3SRick MacklemThe RPCs that can have large RPC messages (Read/Readdir/Write) are 2274488c8c3SRick Macklemdistributed over the additional TCP connections in a round robin 2284488c8c3SRick Macklemfashion. 2294488c8c3SRick MacklemThis option will result in more IP port#s being used. 2304488c8c3SRick MacklemThis option requires the 2314488c8c3SRick Macklem.Cm nfsv4 2324488c8c3SRick Macklemoption. 2337e53f16bSRick MacklemNote that for NFS servers such as AmazonEFS, where each new TCP 2347e53f16bSRick Macklemconnection can connect to a different cluster that maintains lock 2357e53f16bSRick Macklemstate separately, this option cannot be used. 2364b5bc283SCraig Rodrigues.It Cm nfsv2 2374b5bc283SCraig RodriguesUse the NFS Version 2 protocol (the default is to try version 3 first 2384b5bc283SCraig Rodriguesthen version 2). 2394b5bc283SCraig RodriguesNote that NFS version 2 has a file size limit of 2 gigabytes. 2404b5bc283SCraig Rodrigues.It Cm nfsv3 2414b5bc283SCraig RodriguesUse the NFS Version 3 protocol. 242011981fdSRick Macklem.It Cm nfsv4 243011981fdSRick MacklemUse the NFS Version 4 protocol. 24425135859SRick MacklemThis option will force the mount to use 245011981fdSRick MacklemTCP transport. 246b413b035SRick MacklemBy default, the highest minor version of NFS Version 4 that is 247b413b035SRick Macklemsupported by the NFS Version 4 server will be used. 248b413b035SRick MacklemSee the 249b413b035SRick Macklem.Cm minorversion 250b413b035SRick Macklemoption. 251f46bea05SRick MacklemMake sure that all your NFS Version 4 clients have unique 252f46bea05SRick Macklemvalues in 253f46bea05SRick Macklem.Pa /etc/hostid . 2545e70ce7aSRick Macklem.It Cm minorversion Ns = Ns Aq Ar value 255b413b035SRick MacklemUse the specified minor version for a NFS Version 4 mount, 256b413b035SRick Macklemoverriding the default. 257b413b035SRick MacklemThe minor versions supported are 0, 1, and 2. 2585e70ce7aSRick MacklemThis option is only meaningful when used with the 2595e70ce7aSRick Macklem.Cm nfsv4 2605e70ce7aSRick Macklemoption. 26119625f29SRick Macklem.It Cm oneopenown 262547a4dbaSRick MacklemMake a minor version 1 or 2 of the NFS Version 4 protocol mount use a single 263547a4dbaSRick MacklemOpenOwner for all Opens. 26419625f29SRick MacklemThis may be useful for a server with a very low limit on OpenOwners, such as 26519625f29SRick MacklemAmazonEFS. 266448de00dSRick MacklemIt may be required when an accumulation of NFS version 4 Opens occurs, 267448de00dSRick Macklemas indicated by the 268448de00dSRick Macklem.Dq Opens 269448de00dSRick Macklemcount displayed by 270b413b035SRick Macklem.Xr nfsstat 1 271448de00dSRick Macklemwith the 272448de00dSRick Macklem.Fl c 273448de00dSRick Macklemand 274448de00dSRick Macklem.Fl E 275448de00dSRick Macklemcommand-line options. 276448de00dSRick MacklemA common case for an accumulation of Opens is a shared library within 277448de00dSRick Macklemthe NFS mount that is used by several 278448de00dSRick Macklemprocesses, where at least one of these processes is always running. 27900c8b28cSRick MacklemThis option cannot be used for an NFS Version 4, minor version 0 mount. 28019625f29SRick MacklemIt may not work correctly when Delegations are being issued by a server, 28119625f29SRick Macklembut note that the AmazonEFS server does not issued delegations at this time. 28200c8b28cSRick MacklemThis option is only meaningful when used with the 28300c8b28cSRick Macklem.Cm nfsv4 284b413b035SRick Macklemoption. 2855e70ce7aSRick Macklem.It Cm pnfs 286547a4dbaSRick MacklemEnable support for parallel NFS (pNFS) for minor version 1 or 2 of the 2875e70ce7aSRick MacklemNFS Version 4 protocol. 2885e70ce7aSRick MacklemThis option is only meaningful when used with the 289b413b035SRick Macklem.Cm nfsv4 2905e70ce7aSRick Macklemoption. 2915a06ac35SEdward Tomasz Napierala.It Cm noac 2925a06ac35SEdward Tomasz NapieralaDisable attribute caching. 2934b5bc283SCraig Rodrigues.It Cm noconn 2944b5bc283SCraig RodriguesFor UDP mount points, do not do a 2954b5bc283SCraig Rodrigues.Xr connect 2 . 2964b5bc283SCraig RodriguesThis must be used if the server does not reply to requests from the standard 2974b5bc283SCraig RodriguesNFS port number 2049 or replies to requests using a different IP address 2984b5bc283SCraig Rodrigues(which can occur if the server is multi-homed). 2994b5bc283SCraig RodriguesSetting the 3004b5bc283SCraig Rodrigues.Va vfs.nfs.nfs_ip_paranoia 3014b5bc283SCraig Rodriguessysctl to 0 will make this option the default. 302e2f2b370SRuslan Ermilov.It Cm nocto 303e2f2b370SRuslan ErmilovNormally, NFS clients maintain the close-to-open cache coherency. 304e2f2b370SRuslan ErmilovThis works by flushing at close time and checking at open time. 305e2f2b370SRuslan ErmilovChecking at open time is implemented by getting attributes from 306e2f2b370SRuslan Ermilovthe server and purging the data cache if they do not match 307e2f2b370SRuslan Ermilovattributes cached by the client. 308e2f2b370SRuslan Ermilov.Pp 309e2f2b370SRuslan ErmilovThis option disables checking at open time. 310e2f2b370SRuslan ErmilovIt may improve performance for read-only mounts, 311e2f2b370SRuslan Ermilovbut should only be used if the data on the server changes rarely. 312e2f2b370SRuslan ErmilovBe sure to understand the consequences before enabling this option. 3134b5bc283SCraig Rodrigues.It Cm noinet4 , noinet6 3144b5bc283SCraig RodriguesDisables 3154b5bc283SCraig Rodrigues.Dv AF_INET 3164b5bc283SCraig Rodriguesor 3174b5bc283SCraig Rodrigues.Dv AF_INET6 3184b5bc283SCraig Rodriguesconnections. 3194b5bc283SCraig RodriguesUseful for hosts that have 3204b5bc283SCraig Rodriguesboth an A record and an AAAA record for the same name. 3214b5bc283SCraig Rodrigues.It Cm nolockd 32213190d87SAlfred PerlsteinDo 32313190d87SAlfred Perlstein.Em not 32413190d87SAlfred Perlsteinforward 32513190d87SAlfred Perlstein.Xr fcntl 2 3269b436906SRick Macklemlocks over the wire via the NLM protocol for NFSv3 mounts 3279b436906SRick Macklemor via the NFSv4 protocol for NFSv4 mounts. 32813190d87SAlfred PerlsteinAll locks will be local and not seen by the server 3299b436906SRick Macklemand likewise not seen by other NFS clients for NFSv3 or NFSv4 mounts. 330a7475cf4SRuslan ErmilovThis removes the need to run the 33113190d87SAlfred Perlstein.Xr rpcbind 8 33213190d87SAlfred Perlsteinservice and the 33313190d87SAlfred Perlstein.Xr rpc.statd 8 33413190d87SAlfred Perlsteinand 33513190d87SAlfred Perlstein.Xr rpc.lockd 8 3369b436906SRick Macklemservers on the client for NFSv3 mounts. 3373fd0605eSAlfred PerlsteinNote that this option will only be honored when performing the 3383fd0605eSAlfred Perlsteininitial mount, it will be silently ignored if used while updating 3393fd0605eSAlfred Perlsteinthe mount options. 3409b436906SRick MacklemAlso, note that NFSv4 mounts do not use these daemons. 3419b436906SRick MacklemThe NFSv4 protocol handles locks, 3429b436906SRick Macklemunless this option is specified. 343a8e2866cSRick Macklem.It Cm noncontigwr 344a8e2866cSRick MacklemThis mount option allows the NFS client to 345a8e2866cSRick Macklemcombine non-contiguous byte ranges being written 346a8e2866cSRick Macklemsuch that the dirty byte range becomes a superset of the bytes 347a8e2866cSRick Macklemthat are dirty. 348a8e2866cSRick MacklemThis reduces the number of writes significantly for software 349a8e2866cSRick Macklembuilds. 3500fcf43f6SAllan JudeThe merging of byte ranges is not done if the file has been file 351a8e2866cSRick Macklemlocked, since most applications modifying a file from multiple 352a8e2866cSRick Macklemclients will use file locking. 353a8e2866cSRick MacklemAs such, this option could result in a corrupted file for the 354a8e2866cSRick Macklemrare case of an application modifying the file from multiple 355a8e2866cSRick Macklemclients concurrently without using file locking. 356011981fdSRick Macklem.It Cm principal 357011981fdSRick MacklemFor the RPCSEC_GSS security flavors, such as krb5, krb5i and krb5p, 358011981fdSRick Macklemthis option sets the name of the host based principal name expected 3590fcf43f6SAllan Judeby the server. 3600fcf43f6SAllan JudeThis option overrides the default, which will be ``nfs@<server-fqdn>'' 3610fcf43f6SAllan Judeand should normally be sufficient. 3624b5bc283SCraig Rodrigues.It Cm noresvport 363cc75b131SJoerg WunschDo 364cc75b131SJoerg Wunsch.Em not 365cc75b131SJoerg Wunschuse a reserved socket port number (see below). 3664b5bc283SCraig Rodrigues.It Cm port Ns = Ns Aq Ar port_number 3674b5bc283SCraig RodriguesUse specified port number for NFS requests. 3684b5bc283SCraig RodriguesThe default is to query the portmapper for the NFS port. 3695a06ac35SEdward Tomasz Napierala.It Cm proto Ns = Ns Aq Ar protocol 3705a06ac35SEdward Tomasz NapieralaSpecify transport protocol version to use. 3715a06ac35SEdward Tomasz NapieralaCurrently, they are: 3725a06ac35SEdward Tomasz Napierala.Bd -literal 3735a06ac35SEdward Tomasz Napieralaudp - Use UDP over IPv4 3745a06ac35SEdward Tomasz Napieralatcp - Use TCP over IPv4 3755a06ac35SEdward Tomasz Napieralaudp6 - Use UDP over IPv6 3765a06ac35SEdward Tomasz Napieralatcp6 - Use TCP over IPv6 3775a06ac35SEdward Tomasz Napierala.Ed 3784b5bc283SCraig Rodrigues.It Cm rdirplus 379011981fdSRick MacklemUsed with NFSV3 to specify that the \fBReaddirPlus\fR RPC should 3808fae3551SRodney W. Grimesbe used. 381011981fdSRick MacklemFor NFSV4, setting this option has a similar effect, in that it will make 382011981fdSRick Macklemthe Readdir Operation get more attributes. 3838fae3551SRodney W. GrimesThis option reduces RPC traffic for cases such as 3848fae3551SRodney W. Grimes.Dq "ls -l" , 385a62dc406SDoug Rabsonbut tends to flood the attribute and name caches with prefetched entries. 386ef8f7ac9SSheldon HearnTry this option and see whether performance improves or degrades. 387ef8f7ac9SSheldon HearnProbably 388a62dc406SDoug Rabsonmost useful for client to server network interconnects with a large bandwidth 389a62dc406SDoug Rabsontimes delay product. 3904b5bc283SCraig Rodrigues.It Cm readahead Ns = Ns Aq Ar value 3914b5bc283SCraig RodriguesSet the read-ahead count to the specified value. 3924b5bc283SCraig RodriguesThis may be in the range of 0 - 4, and determines how many blocks 3934b5bc283SCraig Rodrigueswill be read ahead when a large file is being read sequentially. 3944b5bc283SCraig RodriguesTrying a value greater than 1 for this is suggested for 3954b5bc283SCraig Rodriguesmounts with a large bandwidth * delay product. 3964b5bc283SCraig Rodrigues.It Cm readdirsize Ns = Ns Aq Ar value 3974b5bc283SCraig RodriguesSet the readdir read size to the specified value. 3984b5bc283SCraig RodriguesThe value should normally 3994b5bc283SCraig Rodriguesbe a multiple of 4004b5bc283SCraig Rodrigues.Dv DIRBLKSIZ 4014b5bc283SCraig Rodriguesthat is <= the read size for the mount. 402a7475cf4SRuslan Ermilov.It Cm resvport 4034b5bc283SCraig RodriguesUse a reserved socket port number. 4044b5bc283SCraig RodriguesThis flag is obsolete, and only retained for compatibility reasons. 4054b5bc283SCraig RodriguesReserved port numbers are used by default now. 4064b5bc283SCraig Rodrigues(For the rare case where the client has a trusted root account 4074b5bc283SCraig Rodriguesbut untrustworthy users and the network cables are in secure areas this does 4084b5bc283SCraig Rodrigueshelp, but for normal desktop clients this does not apply.) 4094b5bc283SCraig Rodrigues.It Cm retrans Ns = Ns Aq Ar value 4104b5bc283SCraig RodriguesSet the retransmit timeout count for soft mounts to the specified value. 4114b5bc283SCraig Rodrigues.It Cm retrycnt Ns = Ns Aq Ar count 4124b5bc283SCraig RodriguesSet the mount retry count to the specified value. 4134b5bc283SCraig RodriguesThe default is a retry count of zero, which means to keep retrying 4144b5bc283SCraig Rodriguesforever. 4154b5bc283SCraig RodriguesThere is a 60 second delay between each attempt. 4164b5bc283SCraig Rodrigues.It Cm rsize Ns = Ns Aq Ar value 4178fae3551SRodney W. GrimesSet the read data size to the specified value. 418a62dc406SDoug RabsonIt should normally be a power of 2 greater than or equal to 1024. 4198fae3551SRodney W. GrimesThis should be used for UDP mounts when the 4208fae3551SRodney W. Grimes.Dq "fragments dropped due to timeout" 4218fae3551SRodney W. Grimesvalue is getting large while actively using a mount point. 4228fae3551SRodney W. Grimes(Use 4238fae3551SRodney W. Grimes.Xr netstat 1 4248fae3551SRodney W. Grimeswith the 4258fae3551SRodney W. Grimes.Fl s 4268fae3551SRodney W. Grimesoption to see what the 4278fae3551SRodney W. Grimes.Dq "fragments dropped due to timeout" 4288fae3551SRodney W. Grimesvalue is.) 429011981fdSRick Macklem.It Cm sec Ns = Ns Aq Ar flavor 430011981fdSRick MacklemThis option specifies what security flavor should be used for the mount. 431011981fdSRick MacklemCurrently, they are: 432011981fdSRick Macklem.Bd -literal 433011981fdSRick Macklemkrb5 - Use KerberosV authentication 434011981fdSRick Macklemkrb5i - Use KerberosV authentication and 435011981fdSRick Macklem apply integrity checksums to RPCs 436011981fdSRick Macklemkrb5p - Use KerberosV authentication and 437011981fdSRick Macklem encrypt the RPC data 438011981fdSRick Macklemsys - The default AUTH_SYS, which uses a 439011981fdSRick Macklem uid + gid list authenticator 440011981fdSRick Macklem.Ed 4414b5bc283SCraig Rodrigues.It Cm soft 4428fae3551SRodney W. GrimesA soft mount, which implies that file system calls will fail 443a7475cf4SRuslan Ermilovafter 444a7475cf4SRuslan Ermilov.Ar retrycnt 445a7475cf4SRuslan Ermilovround trip timeout intervals. 44661330e49SRick Macklem.It Cm syskrb5 44761330e49SRick MacklemThis option specifies that a KerberosV NFSv4 minor version 1 or 2 mount 44861330e49SRick Macklemuses AUTH_SYS for system operations. 44961330e49SRick MacklemUsing this option avoids the need for a KerberosV mount to have a 45061330e49SRick Macklemhost-based principal entry in the default keytab file 45161330e49SRick Macklem(no 45261330e49SRick Macklem.Cm gssname 45361330e49SRick Macklemoption) or a requirement for the user doing the mount to have a 45461330e49SRick Macklemvalid KerberosV ticket granting ticket (TGT) when the mount is done. 45561330e49SRick MacklemThis option is intended to be used with the 45661330e49SRick Macklem.Cm sec Ns = Ns krb5 45761330e49SRick Macklemand 45861330e49SRick Macklem.Cm tls 45961330e49SRick Macklemoptions and can only be used for 46061330e49SRick MacklemNFSv4 mounts with minor version 1 or 2. 4614b5bc283SCraig Rodrigues.It Cm tcp 4624b5bc283SCraig RodriguesUse TCP transport. 4634b5bc283SCraig RodriguesThis is the default option, as it provides for increased reliability on both 4644b5bc283SCraig RodriguesLAN and WAN configurations compared to UDP. 4654b5bc283SCraig RodriguesSome old NFS servers do not support this method; UDP mounts may be required 4664b5bc283SCraig Rodriguesfor interoperability. 4674b5bc283SCraig Rodrigues.It Cm timeout Ns = Ns Aq Ar value 4682a9b29b3SEdward Tomasz NapieralaSet the initial retransmit timeout to the specified value, 4692a9b29b3SEdward Tomasz Napieralaexpressed in tenths of a second. 4708fae3551SRodney W. GrimesMay be useful for fine tuning UDP mounts over internetworks 4718fae3551SRodney W. Grimeswith high packet loss rates or an overloaded server. 4728fae3551SRodney W. GrimesTry increasing the interval if 4738fae3551SRodney W. Grimes.Xr nfsstat 1 4748fae3551SRodney W. Grimesshows high retransmit rates while the file system is active or reducing the 4758fae3551SRodney W. Grimesvalue if there is a low retransmit rate but long response delay observed. 476a7475cf4SRuslan Ermilov(Normally, the 4774b5bc283SCraig Rodrigues.Cm dumbtimer 478a7475cf4SRuslan Ermilovoption should be specified when using this option to manually 479a62dc406SDoug Rabsontune the timeout 480a62dc406SDoug Rabsoninterval.) 4815a06ac35SEdward Tomasz Napierala.It Cm timeo Ns = Ns Aq Ar value 4825a06ac35SEdward Tomasz NapieralaAlias for 4835a06ac35SEdward Tomasz Napierala.Cm timeout . 48404914a21SRick Macklem.It Cm tls 48504914a21SRick MacklemThis option specifies that the connection to the server must use TLS 4860083eef3SRick Macklemper RFC 9289. 48704914a21SRick MacklemTLS is only supported for TCP connections and the 48804914a21SRick Macklem.Xr rpc.tlsclntd 8 48904914a21SRick Macklemdaemon must be running for an NFS over TCP connection to use TLS. 49079302a63SRick Macklem.It Cm tlscertname Ns = Ns Aq Ar name 49179302a63SRick MacklemThis option specifies the name of an alternate certificate to be 49279302a63SRick Macklempresented to the NFS server during TLS handshake. 49379302a63SRick MacklemThe default certificate file names are 49479302a63SRick Macklem.Dq cert.pem 49579302a63SRick Macklemand 49679302a63SRick Macklem.Dq certkey.pem . 49779302a63SRick MacklemWhen this option is specified, 49879302a63SRick Macklem.Ar name 49979302a63SRick Macklemreplaces 50079302a63SRick Macklem.Dq cert 50179302a63SRick Macklemin the above file names. 50279302a63SRick MacklemFor example, if the value of 50379302a63SRick Macklem.Ar name 50479302a63SRick Macklemis specified as 50579302a63SRick Macklem.Dq other 50679302a63SRick Macklemthe certificate file names to be used will be 50779302a63SRick Macklem.Dq other.pem 50879302a63SRick Macklemand 50979302a63SRick Macklem.Dq otherkey.pem . 51079302a63SRick MacklemThese files are stored in 51179302a63SRick Macklem.Pa /etc/rpc.tlsclntd 51279302a63SRick Macklemby default. 51379302a63SRick MacklemThis option is only meaningful when used with the 51479302a63SRick Macklem.Cm tls 51579302a63SRick Macklemoption and the 51679302a63SRick Macklem.Xr rpc.tlsclntd 8 51779302a63SRick Macklemis running with the 51879302a63SRick Macklem.Fl m 51979302a63SRick Macklemcommand line flag set. 5204b5bc283SCraig Rodrigues.It Cm udp 5214b5bc283SCraig RodriguesUse UDP transport. 522528c159fSBjoern A. Zeeb.It Cm vers Ns = Ns Aq Ar vers_number 523528c159fSBjoern A. ZeebUse the specified version number for NFS requests. 524528c159fSBjoern A. ZeebSee the 525528c159fSBjoern A. Zeeb.Cm nfsv2 , 526528c159fSBjoern A. Zeeb.Cm nfsv3 , 527528c159fSBjoern A. Zeeband 528528c159fSBjoern A. Zeeb.Cm nfsv4 529528c159fSBjoern A. Zeeboptions for details. 530840fb1c0SJohn Baldwin.It Cm wcommitsize Ns = Ns Aq Ar value 531840fb1c0SJohn BaldwinSet the maximum pending write commit size to the specified value. 532840fb1c0SJohn BaldwinThis determines the maximum amount of pending write data that the NFS 533840fb1c0SJohn Baldwinclient is willing to cache for each file. 5344b5bc283SCraig Rodrigues.It Cm wsize Ns = Ns Aq Ar value 5358fae3551SRodney W. GrimesSet the write data size to the specified value. 5369806e231SRuslan ErmilovDitto the comments w.r.t.\& the 5374b5bc283SCraig Rodrigues.Cm rsize 5388fae3551SRodney W. Grimesoption, but using the 5398fae3551SRodney W. Grimes.Dq "fragments dropped due to timeout" 5408fae3551SRodney W. Grimesvalue on the server instead of the client. 5418fae3551SRodney W. GrimesNote that both the 5424b5bc283SCraig Rodrigues.Cm rsize 5438fae3551SRodney W. Grimesand 5444b5bc283SCraig Rodrigues.Cm wsize 5458fae3551SRodney W. Grimesoptions should only be used as a last ditch effort at improving performance 5468fae3551SRodney W. Grimeswhen mounting servers that do not support TCP mounts. 5474b5bc283SCraig Rodrigues.El 5484b5bc283SCraig Rodrigues.El 549c2a9d237SGordon Bergling.Sh IMPLEMENTATION NOTES 550c2a9d237SGordon BerglingWhen neither the 551c2a9d237SGordon Bergling.Cm rsize 552c2a9d237SGordon Berglingnor 553c2a9d237SGordon Bergling.Cm wsize 554c2a9d237SGordon Berglingoptions are specified, the I/O size will be set to the largest value 555c2a9d237SGordon Berglingsupported by both the NFS client and server. 556c2a9d237SGordon BerglingThe largest value supported by the NFS client is defined by 557c2a9d237SGordon Berglingthe tunable 558c2a9d237SGordon Bergling.Cd vfs.maxbcachebuf 559c2a9d237SGordon Berglingwhich can be set to a power of two up to 560c2a9d237SGordon Bergling.Cd kern.maxphys . 561c2a9d237SGordon Bergling.Pp 562c2a9d237SGordon BerglingThe 563c2a9d237SGordon Bergling.Xr nfsstat 1 564c2a9d237SGordon Berglingcommand with the 565c2a9d237SGordon Bergling.Ic -m 566c2a9d237SGordon Berglingcommand line option will show what 567c2a9d237SGordon Bergling.Nm 568c2a9d237SGordon Berglingoption settings are actually in use for the mount. 5694b5bc283SCraig Rodrigues.Sh COMPATIBILITY 5704b5bc283SCraig RodriguesThe following command line flags are equivalent to 5714b5bc283SCraig Rodrigues.Fl o 5724b5bc283SCraig Rodriguesnamed options and are supported for compatibility with older 5734b5bc283SCraig Rodriguesinstallations. 5744b5bc283SCraig Rodrigues.Bl -tag -width indent 5754b5bc283SCraig Rodrigues.It Fl 2 5764b5bc283SCraig RodriguesSame as 5774b5bc283SCraig Rodrigues.Fl o Cm nfsv2 5784b5bc283SCraig Rodrigues.It Fl 3 5794b5bc283SCraig RodriguesSame as 5804b5bc283SCraig Rodrigues.Fl o Cm nfsv3 5814b5bc283SCraig Rodrigues.It Fl D 5824b5bc283SCraig RodriguesSame as 5834b5bc283SCraig Rodrigues.Fl o Cm deadthresh 5844b5bc283SCraig Rodrigues.It Fl I 5854b5bc283SCraig RodriguesSame as 5864b5bc283SCraig Rodrigues.Fl o Cm readdirsize Ns = Ns Aq Ar value 5874b5bc283SCraig Rodrigues.It Fl L 5884b5bc283SCraig RodriguesSame as 5894b5bc283SCraig Rodrigues.Fl o Cm nolockd 5904b5bc283SCraig Rodrigues.It Fl N 5914b5bc283SCraig RodriguesSame as 5924b5bc283SCraig Rodrigues.Fl o Cm noresvport 5934b5bc283SCraig Rodrigues.It Fl P 5944b5bc283SCraig RodriguesUse a reserved socket port number. 5954b5bc283SCraig RodriguesThis flag is obsolete, and only retained for compatibility reasons. 5964b5bc283SCraig Rodrigues(For the rare case where the client has a trusted root account 5974b5bc283SCraig Rodriguesbut untrustworthy users and the network cables are in secure areas this does 5984b5bc283SCraig Rodrigueshelp, but for normal desktop clients this does not apply.) 5994b5bc283SCraig Rodrigues.It Fl R 6004b5bc283SCraig RodriguesSame as 6014b5bc283SCraig Rodrigues.Fl o Cm retrycnt Ns = Ns Aq Ar value 6024b5bc283SCraig Rodrigues.It Fl T 6034b5bc283SCraig RodriguesSame as 6044b5bc283SCraig Rodrigues.Fl o Cm tcp 6054b5bc283SCraig Rodrigues.It Fl U 6064b5bc283SCraig RodriguesSame as 6074b5bc283SCraig Rodrigues.Fl o Cm mntudp 6084b5bc283SCraig Rodrigues.It Fl a 6094b5bc283SCraig RodriguesSame as 6104b5bc283SCraig Rodrigues.Fl o Cm readahead Ns = Ns Aq Ar value 6114b5bc283SCraig Rodrigues.It Fl b 6124b5bc283SCraig RodriguesSame as 6134b5bc283SCraig Rodrigues.Fl o Cm bg 6144b5bc283SCraig Rodrigues.It Fl c 6154b5bc283SCraig RodriguesSame as 6164b5bc283SCraig Rodrigues.Fl o Cm noconn 6174b5bc283SCraig Rodrigues.It Fl d 6184b5bc283SCraig RodriguesSame as 6194b5bc283SCraig Rodrigues.Fl o Cm dumbtimer 6204b5bc283SCraig Rodrigues.It Fl g 6214b5bc283SCraig RodriguesSame as 6224b5bc283SCraig Rodrigues.Fl o Cm maxgroups 6234b5bc283SCraig Rodrigues.It Fl i 6244b5bc283SCraig RodriguesSame as 6254b5bc283SCraig Rodrigues.Fl o Cm intr 6264b5bc283SCraig Rodrigues.It Fl l 6274b5bc283SCraig RodriguesSame as 6284b5bc283SCraig Rodrigues.Fl o Cm rdirplus 6294b5bc283SCraig Rodrigues.It Fl r 6304b5bc283SCraig RodriguesSame as 6314b5bc283SCraig Rodrigues.Fl o Cm rsize Ns = Ns Aq Ar value 6324b5bc283SCraig Rodrigues.It Fl s 6334b5bc283SCraig RodriguesSame as 6344b5bc283SCraig Rodrigues.Fl o Cm soft 6354b5bc283SCraig Rodrigues.It Fl t 6364b5bc283SCraig RodriguesSame as 6374b5bc283SCraig Rodrigues.Fl o Cm retransmit Ns = Ns Aq Ar value 638*3ddd961dSBenedict Reuschling(deprecated) 6394b5bc283SCraig Rodrigues.It Fl w 6404b5bc283SCraig RodriguesSame as 6414b5bc283SCraig Rodrigues.Fl o Cm wsize Ns = Ns Aq Ar value 6428fae3551SRodney W. Grimes.It Fl x 6434b5bc283SCraig RodriguesSame as 6444b5bc283SCraig Rodrigues.Fl o Cm retrans Ns = Ns Aq Ar value 6458fae3551SRodney W. Grimes.El 646528c159fSBjoern A. Zeeb.Pp 647528c159fSBjoern A. ZeebThe following 648528c159fSBjoern A. Zeeb.Fl o 649528c159fSBjoern A. Zeebnamed options are equivalent to other 650528c159fSBjoern A. Zeeb.Fl o 651528c159fSBjoern A. Zeebnamed options and are supported for compatibility with other 652528c159fSBjoern A. Zeeboperating systems (e.g., Linux, Solaris, and OSX) to ease usage of 653528c159fSBjoern A. Zeeb.Xr autofs 5 654528c159fSBjoern A. Zeebsupport. 655528c159fSBjoern A. Zeeb.Bl -tag -width indent 656528c159fSBjoern A. Zeeb.It Fl o Cm vers Ns = Ns 2 657528c159fSBjoern A. ZeebSame as 658528c159fSBjoern A. Zeeb.Fl o Cm nfsv2 659528c159fSBjoern A. Zeeb.It Fl o Cm vers Ns = Ns 3 660528c159fSBjoern A. ZeebSame as 661528c159fSBjoern A. Zeeb.Fl o Cm nfsv3 662528c159fSBjoern A. Zeeb.It Fl o Cm vers Ns = Ns 4 663528c159fSBjoern A. ZeebSame as 664528c159fSBjoern A. Zeeb.Fl o Cm nfsv4 665528c159fSBjoern A. Zeeb.El 6668fae3551SRodney W. Grimes.Sh SEE ALSO 6674488c8c3SRick Macklem.Xr nfsstat 1 , 6680c269d1fSCraig Rodrigues.Xr nmount 2 , 6698fae3551SRodney W. Grimes.Xr unmount 2 , 6704488c8c3SRick Macklem.Xr lagg 4 , 671011981fdSRick Macklem.Xr nfsv4 4 , 6728fae3551SRodney W. Grimes.Xr fstab 5 , 673011981fdSRick Macklem.Xr gssd 8 , 6742a2d4405SMatthew Dillon.Xr mount 8 , 675ffc717e2SSheldon Hearn.Xr nfsd 8 , 676893d2b85SSheldon Hearn.Xr nfsiod 8 , 67704914a21SRick Macklem.Xr rpc.tlsclntd 8 , 678893d2b85SSheldon Hearn.Xr showmount 8 6790fcf43f6SAllan Jude.Sh HISTORY 6800fcf43f6SAllan JudeA version of the 6810fcf43f6SAllan Jude.Nm 6820fcf43f6SAllan Judeutility appeared in 6830fcf43f6SAllan Jude.Bx 4.4 . 684011981fdSRick Macklem.Sh BUGS 6859b436906SRick MacklemSince NFSv4 performs open/lock operations that have their ordering strictly 686011981fdSRick Macklemenforced by the server, the options 687011981fdSRick Macklem.Cm intr 688011981fdSRick Macklemand 689011981fdSRick Macklem.Cm soft 690011981fdSRick Macklemcannot be safely used. 6919b436906SRick MacklemFor NFSv4 minor version 1 or 2 mounts, the ordering is done 6929b436906SRick Macklemvia session slots and the NFSv4 client now handles broken session slots 6939b436906SRick Macklemfairly well. 6949b436906SRick MacklemAs such, if the 6959b436906SRick Macklem.Cm nolockd 6969b436906SRick Macklemoption is used along with 6979b436906SRick Macklem.Cm intr 6989b436906SRick Macklemand/or 6999b436906SRick Macklem.Cm soft , 7009b436906SRick Mackleman NFSv4 minor version 1 or 2 mount 7019b436906SRick Macklemshould work fairly well, although still not completely correctly. 7029b436906SRick MacklemFor NFSv4 minor version 0 mounts, 703011981fdSRick Macklem.Cm hard 7049b436906SRick Macklemmounts without the 7059b436906SRick Macklem.Cm intr 7069b436906SRick Macklemmount option is strongly recommended. 707