1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2e2b329e2SAlexey Dobriyanconfig NFSD 3e2b329e2SAlexey Dobriyan tristate "NFS server support" 4e2b329e2SAlexey Dobriyan depends on INET 568666561SManish Katiyar depends on FILE_LOCKING 665294c1fSJeff Layton depends on FSNOTIFY 7e2b329e2SAlexey Dobriyan select LOCKD 8e2b329e2SAlexey Dobriyan select SUNRPC 9e2b329e2SAlexey Dobriyan select EXPORTFS 10e2b329e2SAlexey Dobriyan select NFS_ACL_SUPPORT if NFSD_V2_ACL 112813893fSIulia Manda depends on MULTIUSER 12e2b329e2SAlexey Dobriyan help 13e2b329e2SAlexey Dobriyan Choose Y here if you want to allow other computers to access 14e2b329e2SAlexey Dobriyan files residing on this system using Sun's Network File System 15e2b329e2SAlexey Dobriyan protocol. To compile the NFS server support as a module, 16e2b329e2SAlexey Dobriyan choose M here: the module will be called nfsd. 17e2b329e2SAlexey Dobriyan 18e2b329e2SAlexey Dobriyan You may choose to use a user-space NFS server instead, in which 19e2b329e2SAlexey Dobriyan case you can choose N here. 20e2b329e2SAlexey Dobriyan 21e2b329e2SAlexey Dobriyan To export local file systems using NFS, you also need to install 22e2b329e2SAlexey Dobriyan user space programs which can be found in the Linux nfs-utils 23e2b329e2SAlexey Dobriyan package, available from http://linux-nfs.org/. More detail about 24e2b329e2SAlexey Dobriyan the Linux NFS server implementation is available via the 25e2b329e2SAlexey Dobriyan exports(5) man page. 26e2b329e2SAlexey Dobriyan 27e2b329e2SAlexey Dobriyan Below you can choose which versions of the NFS protocol are 28e2b329e2SAlexey Dobriyan available to clients mounting the NFS server on this system. 29e2b329e2SAlexey Dobriyan Support for NFS version 2 (RFC 1094) is always available when 30e2b329e2SAlexey Dobriyan CONFIG_NFSD is selected. 31e2b329e2SAlexey Dobriyan 32e2b329e2SAlexey Dobriyan If unsure, say N. 33e2b329e2SAlexey Dobriyan 34e2b329e2SAlexey Dobriyanconfig NFSD_V2_ACL 35e2b329e2SAlexey Dobriyan bool 36e2b329e2SAlexey Dobriyan depends on NFSD 37e2b329e2SAlexey Dobriyan 38e2b329e2SAlexey Dobriyanconfig NFSD_V3_ACL 39e2b329e2SAlexey Dobriyan bool "NFS server support for the NFSv3 ACL protocol extension" 40*5f9a62ffSChuck Lever depends on NFSD 41e2b329e2SAlexey Dobriyan select NFSD_V2_ACL 42e2b329e2SAlexey Dobriyan help 43e2b329e2SAlexey Dobriyan Solaris NFS servers support an auxiliary NFSv3 ACL protocol that 44e2b329e2SAlexey Dobriyan never became an official part of the NFS version 3 protocol. 45e2b329e2SAlexey Dobriyan This protocol extension allows applications on NFS clients to 46e2b329e2SAlexey Dobriyan manipulate POSIX Access Control Lists on files residing on NFS 47e2b329e2SAlexey Dobriyan servers. NFS servers enforce POSIX ACLs on local files whether 48e2b329e2SAlexey Dobriyan this protocol is available or not. 49e2b329e2SAlexey Dobriyan 50e2b329e2SAlexey Dobriyan This option enables support in your system's NFS server for the 51e2b329e2SAlexey Dobriyan NFSv3 ACL protocol extension allowing NFS clients to manipulate 52e2b329e2SAlexey Dobriyan POSIX ACLs on files exported by your system's NFS server. NFS 53e2b329e2SAlexey Dobriyan clients which support the Solaris NFSv3 ACL protocol can then 54e2b329e2SAlexey Dobriyan access and modify ACLs on your NFS server. 55e2b329e2SAlexey Dobriyan 56e2b329e2SAlexey Dobriyan To store ACLs on your NFS server, you also need to enable ACL- 57e2b329e2SAlexey Dobriyan related CONFIG options for your local file systems of choice. 58e2b329e2SAlexey Dobriyan 59e2b329e2SAlexey Dobriyan If unsure, say N. 60e2b329e2SAlexey Dobriyan 61e2b329e2SAlexey Dobriyanconfig NFSD_V4 62f987c902SKees Cook bool "NFS server support for NFS version 4" 63f987c902SKees Cook depends on NFSD && PROC_FS 64e2b329e2SAlexey Dobriyan select FS_POSIX_ACL 65827e3457STrond Myklebust select SUNRPC_GSS 6670052273SJulian Braha select CRYPTO 6738a2204fSPatrick Steinhardt select CRYPTO_MD5 68a2e2f2dcSScott Mayhew select CRYPTO_SHA256 69f7790029SJeff Layton select GRACE_PERIOD 7002591f9fSDai Ngo select NFS_V4_2_SSC_HELPER if NFS_V4_2 71e2b329e2SAlexey Dobriyan help 72e2b329e2SAlexey Dobriyan This option enables support in your system's NFS server for 73e2b329e2SAlexey Dobriyan version 4 of the NFS protocol (RFC 3530). 74e2b329e2SAlexey Dobriyan 75e2b329e2SAlexey Dobriyan To export files using NFSv4, you need to install additional user 76e2b329e2SAlexey Dobriyan space programs which can be found in the Linux nfs-utils package, 77e2b329e2SAlexey Dobriyan available from http://linux-nfs.org/. 78e2b329e2SAlexey Dobriyan 79e2b329e2SAlexey Dobriyan If unsure, say N. 8065178db4SBryan Schumaker 819cf514ccSChristoph Hellwigconfig NFSD_PNFS 8281c39329SChristoph Hellwig bool 8381c39329SChristoph Hellwig 8481c39329SChristoph Hellwigconfig NFSD_BLOCKLAYOUT 8581c39329SChristoph Hellwig bool "NFSv4.1 server support for pNFS block layouts" 8610c4de10SChristoph Hellwig depends on NFSD_V4 && BLOCK 8781c39329SChristoph Hellwig select NFSD_PNFS 8815d66ac2SBenjamin Coddington select EXPORTFS_BLOCK_OPS 899cf514ccSChristoph Hellwig help 9081c39329SChristoph Hellwig This option enables support for the exporting pNFS block layouts 9181c39329SChristoph Hellwig in the kernel's NFS server. The pNFS block layout enables NFS 9234a62493SRicardo Ribalda clients to directly perform I/O to block devices accessible to both 9381c39329SChristoph Hellwig the server and the clients. See RFC 5663 for more details. 949cf514ccSChristoph Hellwig 959cf514ccSChristoph Hellwig If unsure, say N. 969cf514ccSChristoph Hellwig 97f99d4fbdSChristoph Hellwigconfig NFSD_SCSILAYOUT 98f99d4fbdSChristoph Hellwig bool "NFSv4.1 server support for pNFS SCSI layouts" 9910c4de10SChristoph Hellwig depends on NFSD_V4 && BLOCK 100f99d4fbdSChristoph Hellwig select NFSD_PNFS 10115d66ac2SBenjamin Coddington select EXPORTFS_BLOCK_OPS 102f99d4fbdSChristoph Hellwig help 103f99d4fbdSChristoph Hellwig This option enables support for the exporting pNFS SCSI layouts 104f99d4fbdSChristoph Hellwig in the kernel's NFS server. The pNFS SCSI layout enables NFS 10534a62493SRicardo Ribalda clients to directly perform I/O to SCSI devices accessible to both 106f99d4fbdSChristoph Hellwig the server and the clients. See draft-ietf-nfsv4-scsi-layout for 107f99d4fbdSChristoph Hellwig more details. 108f99d4fbdSChristoph Hellwig 109f99d4fbdSChristoph Hellwig If unsure, say N. 110f99d4fbdSChristoph Hellwig 1119b9960a0STom Haynesconfig NFSD_FLEXFILELAYOUT 1129b9960a0STom Haynes bool "NFSv4.1 server support for pNFS Flex File layouts" 1139b9960a0STom Haynes depends on NFSD_V4 1149b9960a0STom Haynes select NFSD_PNFS 1159b9960a0STom Haynes help 1169b9960a0STom Haynes This option enables support for the exporting pNFS Flex File 1179b9960a0STom Haynes layouts in the kernel's NFS server. The pNFS Flex File layout 1189b9960a0STom Haynes enables NFS clients to directly perform I/O to NFSv3 devices 11934a62493SRicardo Ribalda accessible to both the server and the clients. See 1209b9960a0STom Haynes draft-ietf-nfsv4-flex-files for more details. 1219b9960a0STom Haynes 1229b9960a0STom Haynes Warning, this server implements the bare minimum functionality 1239b9960a0STom Haynes to be a flex file server - it is for testing the client, 1249b9960a0STom Haynes not for use in production. 1259b9960a0STom Haynes 1269b9960a0STom Haynes If unsure, say N. 1279b9960a0STom Haynes 128b9e8638eSOlga Kornievskaiaconfig NFSD_V4_2_INTER_SSC 129b9e8638eSOlga Kornievskaia bool "NFSv4.2 inter server to server COPY" 130d9092b4bSDai Ngo depends on NFSD_V4 && NFS_V4_2 131b9e8638eSOlga Kornievskaia help 132b9e8638eSOlga Kornievskaia This option enables support for NFSv4.2 inter server to 133b9e8638eSOlga Kornievskaia server copy where the destination server calls the NFSv4.2 134b9e8638eSOlga Kornievskaia client to read the data to copy from the source server. 135b9e8638eSOlga Kornievskaia 136b9e8638eSOlga Kornievskaia If unsure, say N. 137b9e8638eSOlga Kornievskaia 13818032ca0SDavid Quigleyconfig NFSD_V4_SECURITY_LABEL 13918032ca0SDavid Quigley bool "Provide Security Label support for NFSv4 server" 14018032ca0SDavid Quigley depends on NFSD_V4 && SECURITY 14118032ca0SDavid Quigley help 14218032ca0SDavid Quigley 14318032ca0SDavid Quigley Say Y here if you want enable fine-grained security label attribute 14418032ca0SDavid Quigley support for NFS version 4. Security labels allow security modules like 14518032ca0SDavid Quigley SELinux and Smack to label files to facilitate enforcement of their policies. 14618032ca0SDavid Quigley Without this an NFSv4 mount will have the same label on each file. 14718032ca0SDavid Quigley 14818032ca0SDavid Quigley If you do not wish to enable fine-grained security labels SELinux or 14918032ca0SDavid Quigley Smack policies on NFSv4 files, say N. 150