1 # SPDX-License-Identifier: GPL-2.0-only
3 tristate "NFS client support"
4 depends on INET && FILE_LOCKING && MULTIUSER
11 select NFS_ACL_SUPPORT if NFS_V3_ACL
13 Choose Y here if you want to access files residing on other
14 computers using Sun's Network File System protocol. To compile
15 this file system support as a module, choose M here: the module
18 To mount file systems exported by NFS servers, you also need to
19 install the user space mount.nfs command which can be found in
20 the Linux nfs-utils package, available from http://linux-nfs.org/.
21 Information about using the mount command is available in the
22 mount(8) man page. More detail about the Linux NFS client
23 implementation is available via the nfs(5) man page.
25 Below you can choose which versions of the NFS protocol are
26 available in the kernel to mount NFS servers. Support for NFS
27 version 2 (RFC 1094) is always available when NFS_FS is selected.
29 To configure a system which mounts its root file system via NFS
30 at boot time, say Y here, select "Kernel level IP
31 autoconfiguration" in the NETWORK menu, and select "Root file
32 system on NFS" below. You cannot compile this file system as a
38 tristate "NFS client support for NFS version 2"
42 This option enables support for version 2 of the NFS protocol
43 (RFC 1094) in the kernel's NFS client.
48 tristate "NFS client support for NFS version 3"
52 This option enables support for version 3 of the NFS protocol
53 (RFC 1813) in the kernel's NFS client.
58 bool "NFS client support for the NFSv3 ACL protocol extension"
61 Some NFS servers support an auxiliary NFSv3 ACL protocol that
62 Sun added to Solaris but never became an official part of the
63 NFS version 3 protocol. This protocol extension allows
64 applications on NFS clients to manipulate POSIX Access Control
65 Lists on files residing on NFS servers. NFS servers enforce
66 ACLs on local files whether this protocol is available or not.
68 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
69 protocol extension and you want your NFS client to allow
70 applications to access and modify ACLs on files on the server.
72 Most NFS servers don't support the Solaris NFSv3 ACL protocol
73 extension. You can choose N here or specify the "noacl" mount
74 option to prevent your NFS client from trying to use the NFSv3
80 tristate "NFS client support for NFS version 4"
85 This option enables support for version 4 of the NFS protocol
86 (RFC 3530) in the kernel's NFS client.
88 To mount NFS servers using NFSv4, you also need to install user
89 space programs which can be found in the Linux nfs-utils package,
90 available from http://linux-nfs.org/.
95 bool "Provide swap over NFS support"
97 depends on NFS_FS && SWAP
100 This option enables swapon to work on files located on NFS mounts.
103 bool "NFS client support for NFSv4.1"
105 select SUNRPC_BACKCHANNEL
107 This option enables support for minor version 1 of the NFSv4 protocol
108 (RFC 5661) in the kernel's NFS client.
113 bool "NFS client support for NFSv4.2"
116 This option enables support for minor version 2 of the NFSv4 protocol
117 in the kernel's NFS client.
121 config PNFS_FILE_LAYOUT
128 depends on NFS_V4_1 && BLK_DEV_DM
131 config PNFS_FLEXFILE_LAYOUT
133 depends on NFS_V4_1 && NFS_V3
136 config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
137 string "NFSv4.1 Implementation ID Domain"
141 This option defines the domain portion of the implementation ID that
142 may be sent in the NFS exchange_id operation. The value must be in
143 the format of a DNS domain name and should be set to the DNS domain
144 name of the distribution.
145 If the NFS client is unchanged from the upstream kernel, this
146 option should be set to the default "kernel.org".
148 config NFS_V4_1_MIGRATION
149 bool "NFSv4.1 client support for migration"
153 This option makes the NFS client advertise to NFSv4.1 servers that
154 it can support NFSv4 migration.
156 The NFSv4.1 pieces of the Linux NFSv4 migration implementation are
157 still experimental. If you are not an NFSv4 developer, say N here.
159 config NFS_V4_SECURITY_LABEL
161 depends on NFS_V4_2 && SECURITY
165 bool "Root file system on NFS"
166 depends on NFS_FS=y && IP_PNP
168 If you want your system to mount its root file system via NFS,
169 choose Y here. This is common practice for managing systems
170 without local permanent storage. For details, read
171 <file:Documentation/admin-guide/nfs/nfsroot.rst>.
173 Most people say N here.
176 bool "Provide NFS client caching support"
177 depends on NFS_FS=m && FSCACHE || NFS_FS=y && FSCACHE=y
179 Say Y here if you want NFS data to be cached locally on disc through
180 the general filesystem cache manager
182 config NFS_USE_LEGACY_DNS
183 bool "Use the legacy NFS DNS resolver"
186 The kernel now provides a method for translating a host name into an
187 IP address. Select Y here if you would rather use your own DNS
192 config NFS_USE_KERNEL_DNS
194 depends on NFS_V4 && !NFS_USE_LEGACY_DNS
200 depends on NFS_FS && SUNRPC_DEBUG
204 config NFS_DISABLE_UDP_SUPPORT
205 bool "NFS: Disable NFS UDP protocol support"
209 Choose Y here to disable the use of NFS over UDP. NFS over UDP
210 on modern networks (1Gb+) can lead to data corruption caused by
211 fragmentation during high loads.
213 config NFS_V4_2_READ_PLUS
214 bool "NFS: Enable support for the NFSv4.2 READ_PLUS operation"
218 This is intended for developers only. The READ_PLUS operation has
219 been shown to have issues under specific conditions and should not
220 be used in production.