Kconfig 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. config NFS_FS
  3. tristate "NFS client support"
  4. depends on INET && FILE_LOCKING && MULTIUSER
  5. select LOCKD
  6. select SUNRPC
  7. select NFS_ACL_SUPPORT if NFS_V3_ACL
  8. help
  9. Choose Y here if you want to access files residing on other
  10. computers using Sun's Network File System protocol. To compile
  11. this file system support as a module, choose M here: the module
  12. will be called nfs.
  13. To mount file systems exported by NFS servers, you also need to
  14. install the user space mount.nfs command which can be found in
  15. the Linux nfs-utils package, available from http://linux-nfs.org/.
  16. Information about using the mount command is available in the
  17. mount(8) man page. More detail about the Linux NFS client
  18. implementation is available via the nfs(5) man page.
  19. Below you can choose which versions of the NFS protocol are
  20. available in the kernel to mount NFS servers. Support for NFS
  21. version 2 (RFC 1094) is always available when NFS_FS is selected.
  22. To configure a system which mounts its root file system via NFS
  23. at boot time, say Y here, select "Kernel level IP
  24. autoconfiguration" in the NETWORK menu, and select "Root file
  25. system on NFS" below. You cannot compile this file system as a
  26. module in this case.
  27. If unsure, say N.
  28. config NFS_V2
  29. tristate "NFS client support for NFS version 2"
  30. depends on NFS_FS
  31. default y
  32. help
  33. This option enables support for version 2 of the NFS protocol
  34. (RFC 1094) in the kernel's NFS client.
  35. If unsure, say Y.
  36. config NFS_V3
  37. tristate "NFS client support for NFS version 3"
  38. depends on NFS_FS
  39. default y
  40. help
  41. This option enables support for version 3 of the NFS protocol
  42. (RFC 1813) in the kernel's NFS client.
  43. If unsure, say Y.
  44. config NFS_V3_ACL
  45. bool "NFS client support for the NFSv3 ACL protocol extension"
  46. depends on NFS_V3
  47. help
  48. Some NFS servers support an auxiliary NFSv3 ACL protocol that
  49. Sun added to Solaris but never became an official part of the
  50. NFS version 3 protocol. This protocol extension allows
  51. applications on NFS clients to manipulate POSIX Access Control
  52. Lists on files residing on NFS servers. NFS servers enforce
  53. ACLs on local files whether this protocol is available or not.
  54. Choose Y here if your NFS server supports the Solaris NFSv3 ACL
  55. protocol extension and you want your NFS client to allow
  56. applications to access and modify ACLs on files on the server.
  57. Most NFS servers don't support the Solaris NFSv3 ACL protocol
  58. extension. You can choose N here or specify the "noacl" mount
  59. option to prevent your NFS client from trying to use the NFSv3
  60. ACL protocol.
  61. If unsure, say N.
  62. config NFS_V4
  63. tristate "NFS client support for NFS version 4"
  64. depends on NFS_FS
  65. select SUNRPC_GSS
  66. select KEYS
  67. help
  68. This option enables support for version 4 of the NFS protocol
  69. (RFC 3530) in the kernel's NFS client.
  70. To mount NFS servers using NFSv4, you also need to install user
  71. space programs which can be found in the Linux nfs-utils package,
  72. available from http://linux-nfs.org/.
  73. If unsure, say Y.
  74. config NFS_SWAP
  75. bool "Provide swap over NFS support"
  76. default n
  77. depends on NFS_FS && SWAP
  78. select SUNRPC_SWAP
  79. help
  80. This option enables swapon to work on files located on NFS mounts.
  81. config NFS_V4_1
  82. bool "NFS client support for NFSv4.1"
  83. depends on NFS_V4
  84. select SUNRPC_BACKCHANNEL
  85. help
  86. This option enables support for minor version 1 of the NFSv4 protocol
  87. (RFC 5661) in the kernel's NFS client.
  88. If unsure, say N.
  89. config NFS_V4_2
  90. bool "NFS client support for NFSv4.2"
  91. depends on NFS_V4_1
  92. help
  93. This option enables support for minor version 2 of the NFSv4 protocol
  94. in the kernel's NFS client.
  95. If unsure, say N.
  96. config PNFS_FILE_LAYOUT
  97. tristate
  98. depends on NFS_V4_1
  99. default NFS_V4
  100. config PNFS_BLOCK
  101. tristate
  102. depends on NFS_V4_1 && BLK_DEV_DM
  103. default NFS_V4
  104. config PNFS_FLEXFILE_LAYOUT
  105. tristate
  106. depends on NFS_V4_1 && NFS_V3
  107. default NFS_V4
  108. config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
  109. string "NFSv4.1 Implementation ID Domain"
  110. depends on NFS_V4_1
  111. default "kernel.org"
  112. help
  113. This option defines the domain portion of the implementation ID that
  114. may be sent in the NFS exchange_id operation. The value must be in
  115. the format of a DNS domain name and should be set to the DNS domain
  116. name of the distribution.
  117. If the NFS client is unchanged from the upstream kernel, this
  118. option should be set to the default "kernel.org".
  119. config NFS_V4_1_MIGRATION
  120. bool "NFSv4.1 client support for migration"
  121. depends on NFS_V4_1
  122. default n
  123. help
  124. This option makes the NFS client advertise to NFSv4.1 servers that
  125. it can support NFSv4 migration.
  126. The NFSv4.1 pieces of the Linux NFSv4 migration implementation are
  127. still experimental. If you are not an NFSv4 developer, say N here.
  128. config NFS_V4_SECURITY_LABEL
  129. bool
  130. depends on NFS_V4_2 && SECURITY
  131. default y
  132. config ROOT_NFS
  133. bool "Root file system on NFS"
  134. depends on NFS_FS=y && IP_PNP
  135. help
  136. If you want your system to mount its root file system via NFS,
  137. choose Y here. This is common practice for managing systems
  138. without local permanent storage. For details, read
  139. <file:Documentation/admin-guide/nfs/nfsroot.rst>.
  140. Most people say N here.
  141. config NFS_FSCACHE
  142. bool "Provide NFS client caching support"
  143. depends on NFS_FS=m && FSCACHE || NFS_FS=y && FSCACHE=y
  144. help
  145. Say Y here if you want NFS data to be cached locally on disc through
  146. the general filesystem cache manager
  147. config NFS_USE_LEGACY_DNS
  148. bool "Use the legacy NFS DNS resolver"
  149. depends on NFS_V4
  150. help
  151. The kernel now provides a method for translating a host name into an
  152. IP address. Select Y here if you would rather use your own DNS
  153. resolver script.
  154. If unsure, say N
  155. config NFS_USE_KERNEL_DNS
  156. bool
  157. depends on NFS_V4 && !NFS_USE_LEGACY_DNS
  158. select DNS_RESOLVER
  159. default y
  160. config NFS_DEBUG
  161. bool
  162. depends on NFS_FS && SUNRPC_DEBUG
  163. select CRC32
  164. default y
  165. config NFS_DISABLE_UDP_SUPPORT
  166. bool "NFS: Disable NFS UDP protocol support"
  167. depends on NFS_FS
  168. default y
  169. help
  170. Choose Y here to disable the use of NFS over UDP. NFS over UDP
  171. on modern networks (1Gb+) can lead to data corruption caused by
  172. fragmentation during high loads.
  173. config NFS_V4_2_READ_PLUS
  174. bool "NFS: Enable support for the NFSv4.2 READ_PLUS operation"
  175. depends on NFS_V4_2
  176. default n
  177. help
  178. This is intended for developers only. The READ_PLUS operation has
  179. been shown to have issues under specific conditions and should not
  180. be used in production.