Kconfig 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. config NFSD
  3. tristate "NFS server support"
  4. depends on INET
  5. depends on FILE_LOCKING
  6. depends on FSNOTIFY
  7. select LOCKD
  8. select SUNRPC
  9. select EXPORTFS
  10. select NFS_ACL_SUPPORT if NFSD_V2_ACL
  11. depends on MULTIUSER
  12. help
  13. Choose Y here if you want to allow other computers to access
  14. files residing on this system using Sun's Network File System
  15. protocol. To compile the NFS server support as a module,
  16. choose M here: the module will be called nfsd.
  17. You may choose to use a user-space NFS server instead, in which
  18. case you can choose N here.
  19. To export local file systems using NFS, you also need to install
  20. user space programs which can be found in the Linux nfs-utils
  21. package, available from http://linux-nfs.org/. More detail about
  22. the Linux NFS server implementation is available via the
  23. exports(5) man page.
  24. Below you can choose which versions of the NFS protocol are
  25. available to clients mounting the NFS server on this system.
  26. Support for NFS version 2 (RFC 1094) is always available when
  27. CONFIG_NFSD is selected.
  28. If unsure, say N.
  29. config NFSD_V2_ACL
  30. bool
  31. depends on NFSD
  32. config NFSD_V3_ACL
  33. bool "NFS server support for the NFSv3 ACL protocol extension"
  34. depends on NFSD
  35. select NFSD_V2_ACL
  36. help
  37. Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
  38. never became an official part of the NFS version 3 protocol.
  39. This protocol extension allows applications on NFS clients to
  40. manipulate POSIX Access Control Lists on files residing on NFS
  41. servers. NFS servers enforce POSIX ACLs on local files whether
  42. this protocol is available or not.
  43. This option enables support in your system's NFS server for the
  44. NFSv3 ACL protocol extension allowing NFS clients to manipulate
  45. POSIX ACLs on files exported by your system's NFS server. NFS
  46. clients which support the Solaris NFSv3 ACL protocol can then
  47. access and modify ACLs on your NFS server.
  48. To store ACLs on your NFS server, you also need to enable ACL-
  49. related CONFIG options for your local file systems of choice.
  50. If unsure, say N.
  51. config NFSD_V4
  52. bool "NFS server support for NFS version 4"
  53. depends on NFSD && PROC_FS
  54. select FS_POSIX_ACL
  55. select SUNRPC_GSS
  56. select CRYPTO
  57. select CRYPTO_MD5
  58. select CRYPTO_SHA256
  59. select GRACE_PERIOD
  60. select NFS_V4_2_SSC_HELPER if NFS_V4_2
  61. help
  62. This option enables support in your system's NFS server for
  63. version 4 of the NFS protocol (RFC 3530).
  64. To export files using NFSv4, you need to install additional user
  65. space programs which can be found in the Linux nfs-utils package,
  66. available from http://linux-nfs.org/.
  67. If unsure, say N.
  68. config NFSD_PNFS
  69. bool
  70. config NFSD_BLOCKLAYOUT
  71. bool "NFSv4.1 server support for pNFS block layouts"
  72. depends on NFSD_V4 && BLOCK
  73. select NFSD_PNFS
  74. select EXPORTFS_BLOCK_OPS
  75. help
  76. This option enables support for the exporting pNFS block layouts
  77. in the kernel's NFS server. The pNFS block layout enables NFS
  78. clients to directly perform I/O to block devices accessible to both
  79. the server and the clients. See RFC 5663 for more details.
  80. If unsure, say N.
  81. config NFSD_SCSILAYOUT
  82. bool "NFSv4.1 server support for pNFS SCSI layouts"
  83. depends on NFSD_V4 && BLOCK
  84. select NFSD_PNFS
  85. select EXPORTFS_BLOCK_OPS
  86. help
  87. This option enables support for the exporting pNFS SCSI layouts
  88. in the kernel's NFS server. The pNFS SCSI layout enables NFS
  89. clients to directly perform I/O to SCSI devices accessible to both
  90. the server and the clients. See draft-ietf-nfsv4-scsi-layout for
  91. more details.
  92. If unsure, say N.
  93. config NFSD_FLEXFILELAYOUT
  94. bool "NFSv4.1 server support for pNFS Flex File layouts"
  95. depends on NFSD_V4
  96. select NFSD_PNFS
  97. help
  98. This option enables support for the exporting pNFS Flex File
  99. layouts in the kernel's NFS server. The pNFS Flex File layout
  100. enables NFS clients to directly perform I/O to NFSv3 devices
  101. accessible to both the server and the clients. See
  102. draft-ietf-nfsv4-flex-files for more details.
  103. Warning, this server implements the bare minimum functionality
  104. to be a flex file server - it is for testing the client,
  105. not for use in production.
  106. If unsure, say N.
  107. config NFSD_V4_2_INTER_SSC
  108. bool "NFSv4.2 inter server to server COPY"
  109. depends on NFSD_V4 && NFS_V4_2
  110. help
  111. This option enables support for NFSv4.2 inter server to
  112. server copy where the destination server calls the NFSv4.2
  113. client to read the data to copy from the source server.
  114. If unsure, say N.
  115. config NFSD_V4_SECURITY_LABEL
  116. bool "Provide Security Label support for NFSv4 server"
  117. depends on NFSD_V4 && SECURITY
  118. help
  119. Say Y here if you want enable fine-grained security label attribute
  120. support for NFS version 4. Security labels allow security modules like
  121. SELinux and Smack to label files to facilitate enforcement of their policies.
  122. Without this an NFSv4 mount will have the same label on each file.
  123. If you do not wish to enable fine-grained security labels SELinux or
  124. Smack policies on NFSv4 files, say N.