xref: /linux/fs/nfs/Kconfig (revision 26b0d14106954ae46d2f4f7eec3481828a210f7d)
1config NFS_FS
2	tristate "NFS client support"
3	depends on INET && FILE_LOCKING
4	select LOCKD
5	select SUNRPC
6	select NFS_ACL_SUPPORT if NFS_V3_ACL
7	help
8	  Choose Y here if you want to access files residing on other
9	  computers using Sun's Network File System protocol.  To compile
10	  this file system support as a module, choose M here: the module
11	  will be called nfs.
12
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
20	  Below you can choose which versions of the NFS protocol are
21	  available in the kernel to mount NFS servers.  Support for NFS
22	  version 2 (RFC 1094) is always available when NFS_FS is selected.
23
24	  To configure a system which mounts its root file system via NFS
25	  at boot time, say Y here, select "Kernel level IP
26	  autoconfiguration" in the NETWORK menu, and select "Root file
27	  system on NFS" below.  You cannot compile this file system as a
28	  module in this case.
29
30	  If unsure, say N.
31
32config NFS_V2
33	bool "NFS client support for NFS version 2"
34	depends on NFS_FS
35	default y
36	help
37	  This option enables support for version 2 of the NFS protocol
38	  (RFC 1094) in the kernel's NFS client.
39
40	  If unsure, say Y.
41
42config NFS_V3
43	bool "NFS client support for NFS version 3"
44	depends on NFS_FS
45	default y
46	help
47	  This option enables support for version 3 of the NFS protocol
48	  (RFC 1813) in the kernel's NFS client.
49
50	  If unsure, say Y.
51
52config NFS_V3_ACL
53	bool "NFS client support for the NFSv3 ACL protocol extension"
54	depends on NFS_V3
55	help
56	  Some NFS servers support an auxiliary NFSv3 ACL protocol that
57	  Sun added to Solaris but never became an official part of the
58	  NFS version 3 protocol.  This protocol extension allows
59	  applications on NFS clients to manipulate POSIX Access Control
60	  Lists on files residing on NFS servers.  NFS servers enforce
61	  ACLs on local files whether this protocol is available or not.
62
63	  Choose Y here if your NFS server supports the Solaris NFSv3 ACL
64	  protocol extension and you want your NFS client to allow
65	  applications to access and modify ACLs on files on the server.
66
67	  Most NFS servers don't support the Solaris NFSv3 ACL protocol
68	  extension.  You can choose N here or specify the "noacl" mount
69	  option to prevent your NFS client from trying to use the NFSv3
70	  ACL protocol.
71
72	  If unsure, say N.
73
74config NFS_V4
75	bool "NFS client support for NFS version 4"
76	depends on NFS_FS
77	select SUNRPC_GSS
78	select KEYS
79	help
80	  This option enables support for version 4 of the NFS protocol
81	  (RFC 3530) in the kernel's NFS client.
82
83	  To mount NFS servers using NFSv4, you also need to install user
84	  space programs which can be found in the Linux nfs-utils package,
85	  available from http://linux-nfs.org/.
86
87	  If unsure, say Y.
88
89config NFS_V4_1
90	bool "NFS client support for NFSv4.1 (EXPERIMENTAL)"
91	depends on NFS_FS && NFS_V4 && EXPERIMENTAL
92	select SUNRPC_BACKCHANNEL
93	select PNFS_FILE_LAYOUT
94	help
95	  This option enables support for minor version 1 of the NFSv4 protocol
96	  (RFC 5661) in the kernel's NFS client.
97
98	  If unsure, say N.
99
100config PNFS_FILE_LAYOUT
101	tristate
102
103config PNFS_BLOCK
104	tristate
105	depends on NFS_FS && NFS_V4_1 && BLK_DEV_DM
106	default m
107
108config PNFS_OBJLAYOUT
109	tristate
110	depends on NFS_FS && NFS_V4_1 && SCSI_OSD_ULD
111	default m
112
113config NFS_V4_1_IMPLEMENTATION_ID_DOMAIN
114	string "NFSv4.1 Implementation ID Domain"
115	depends on NFS_V4_1
116	default "kernel.org"
117	help
118	  This option defines the domain portion of the implementation ID that
119	  may be sent in the NFS exchange_id operation.  The value must be in
120	  the format of a DNS domain name and should be set to the DNS domain
121	  name of the distribution.
122	  If the NFS client is unchanged from the upstream kernel, this
123	  option should be set to the default "kernel.org".
124
125config ROOT_NFS
126	bool "Root file system on NFS"
127	depends on NFS_FS=y && IP_PNP
128	help
129	  If you want your system to mount its root file system via NFS,
130	  choose Y here.  This is common practice for managing systems
131	  without local permanent storage.  For details, read
132	  <file:Documentation/filesystems/nfs/nfsroot.txt>.
133
134	  Most people say N here.
135
136config NFS_FSCACHE
137	bool "Provide NFS client caching support"
138	depends on NFS_FS=m && FSCACHE || NFS_FS=y && FSCACHE=y
139	help
140	  Say Y here if you want NFS data to be cached locally on disc through
141	  the general filesystem cache manager
142
143config NFS_USE_LEGACY_DNS
144	bool "Use the legacy NFS DNS resolver"
145	depends on NFS_V4
146	help
147	  The kernel now provides a method for translating a host name into an
148	  IP address.  Select Y here if you would rather use your own DNS
149	  resolver script.
150
151	  If unsure, say N
152
153config NFS_USE_KERNEL_DNS
154	bool
155	depends on NFS_V4 && !NFS_USE_LEGACY_DNS
156	select DNS_RESOLVER
157	default y
158
159config NFS_DEBUG
160	bool
161	depends on NFS_FS && SUNRPC_DEBUG
162	select CRC32
163	default y
164