blob: 9acf3a2d2313a89189078e9a617969431266c76b [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#
2# File system configuration
3#
4
5menu "File systems"
6
David Howells93614012006-09-30 20:45:40 +02007if BLOCK
8
Alexey Dobriyan6da0b382008-10-20 22:28:45 +04009source "fs/ext2/Kconfig"
10source "fs/ext3/Kconfig"
11source "fs/ext4/Kconfig"
Carsten Otte6d791252005-06-23 22:05:26 -070012
13config FS_XIP
14# execute in place
15 bool
16 depends on EXT2_FS_XIP
17 default y
18
Alexey Dobriyan6da0b382008-10-20 22:28:45 +040019source "fs/jbd/Kconfig"
20source "fs/jbd2/Kconfig"
Mingming Caodab291a2006-10-11 01:21:01 -070021
Linus Torvalds1da177e2005-04-16 15:20:36 -070022config FS_MBCACHE
Mingming Cao02ea2102006-10-11 01:20:56 -070023# Meta block cache for Extended Attributes (ext2/ext3/ext4)
Linus Torvalds1da177e2005-04-16 15:20:36 -070024 tristate
Adrian Bunk2c512392008-08-20 16:56:22 -070025 default y if EXT2_FS=y && EXT2_FS_XATTR
26 default y if EXT3_FS=y && EXT3_FS_XATTR
27 default y if EXT4_FS=y && EXT4_FS_XATTR
28 default m if EXT2_FS_XATTR || EXT3_FS_XATTR || EXT4_FS_XATTR
Linus Torvalds1da177e2005-04-16 15:20:36 -070029
Alexey Dobriyanb16ecfe2009-01-22 10:22:31 +030030source "fs/reiserfs/Kconfig"
Alexey Dobriyanf5c77962009-01-22 10:24:27 +030031source "fs/jfs/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -070032
33config FS_POSIX_ACL
Chuck Lever89206952008-02-11 17:12:24 -050034# Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
Linus Torvalds1da177e2005-04-16 15:20:36 -070035#
36# NOTE: you can implement Posix ACLs without these helpers (XFS does).
37# Never use this symbol for ifdefs.
38#
39 bool
Andreas Gruenbacherb84c2152005-07-07 17:56:57 -070040 default n
Linus Torvalds1da177e2005-04-16 15:20:36 -070041
Thomas Petazzonibfcd17a2008-08-06 15:12:22 +020042config FILE_LOCKING
43 bool "Enable POSIX file locking API" if EMBEDDED
44 default y
45 help
46 This option enables standard file locking support, required
47 for filesystems like NFS and for the flock() system
48 call. Disabling this option saves about 11k.
49
Linus Torvalds1da177e2005-04-16 15:20:36 -070050source "fs/xfs/Kconfig"
David Teiglandf7825dc2006-01-16 16:43:37 +000051source "fs/gfs2/Kconfig"
Alexey Dobriyan2fe43712009-01-22 10:26:11 +030052source "fs/ocfs2/Kconfig"
Alexey Dobriyan335debe2009-01-22 10:27:30 +030053source "fs/btrfs/Kconfig"
Chris Mason60582d12008-09-25 12:25:16 -040054
Randy Dunlap25fad942008-02-07 00:15:16 -080055endif # BLOCK
56
Eric Paris272eb012008-12-17 13:59:41 -050057source "fs/notify/Kconfig"
Amy Griffis2d9048e2006-06-01 13:10:59 -070058
Linus Torvalds1da177e2005-04-16 15:20:36 -070059config QUOTA
60 bool "Quota support"
61 help
62 If you say Y here, you will be able to set per user limits for disk
63 usage (also called disk quotas). Currently, it works for the
64 ext2, ext3, and reiserfs file system. ext3 also supports journalled
65 quotas for which you don't need to run quotacheck(8) after an unclean
Adrian Bunk919532a2005-09-06 15:17:22 -070066 shutdown.
67 For further details, read the Quota mini-HOWTO, available from
Linus Torvalds1da177e2005-04-16 15:20:36 -070068 <http://www.tldp.org/docs.html#howto>, or the documentation provided
69 with the quota tools. Probably the quota support is only useful for
70 multi user systems. If unsure, say N.
71
Jan Kara8e893462007-10-16 23:29:31 -070072config QUOTA_NETLINK_INTERFACE
73 bool "Report quota messages through netlink interface"
74 depends on QUOTA && NET
75 help
76 If you say Y here, quota warnings (about exceeding softlimit, reaching
77 hardlimit, etc.) will be reported through netlink interface. If unsure,
78 say Y.
79
80config PRINT_QUOTA_WARNING
81 bool "Print quota warnings to console (OBSOLETE)"
82 depends on QUOTA
83 default y
84 help
85 If you say Y here, quota warnings (about exceeding softlimit, reaching
86 hardlimit, etc.) will be printed to the process' controlling terminal.
87 Note that this behavior is currently deprecated and may go away in
88 future. Please use notification via netlink socket instead.
89
Jan Kara1ccd14b2008-09-22 05:54:49 +020090# Generic support for tree structured quota files. Seleted when needed.
91config QUOTA_TREE
92 tristate
93
Linus Torvalds1da177e2005-04-16 15:20:36 -070094config QFMT_V1
95 tristate "Old quota format support"
96 depends on QUOTA
97 help
98 This quota format was (is) used by kernels earlier than 2.4.22. If
99 you have quota working and you don't want to convert to new quota
100 format say Y here.
101
102config QFMT_V2
103 tristate "Quota format v2 support"
104 depends on QUOTA
Jan Kara1ccd14b2008-09-22 05:54:49 +0200105 select QUOTA_TREE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106 help
107 This quota format allows using quotas with 32-bit UIDs/GIDs. If you
Adrian Bunk919532a2005-09-06 15:17:22 -0700108 need this functionality say Y here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109
110config QUOTACTL
111 bool
112 depends on XFS_QUOTA || QUOTA
113 default y
114
Alexey Dobriyan90ffd462009-01-22 10:31:56 +0300115source "fs/autofs/Kconfig"
116source "fs/autofs4/Kconfig"
Alexey Dobriyan3ef77842009-01-22 10:33:25 +0300117source "fs/fuse/Kconfig"
Miklos Szeredi04578f12005-09-09 13:10:22 -0700118
Randy Dunlapf2fbc6c2006-10-19 23:28:35 -0700119config GENERIC_ACL
120 bool
121 select FS_POSIX_ACL
122
David Howells93614012006-09-30 20:45:40 +0200123if BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124menu "CD-ROM/DVD Filesystems"
125
Alexey Dobriyanddfaccd2009-01-22 10:35:21 +0300126source "fs/isofs/Kconfig"
127source "fs/udf/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700128
129endmenu
Randy Dunlap25fad942008-02-07 00:15:16 -0800130endif # BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700131
David Howells93614012006-09-30 20:45:40 +0200132if BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700133menu "DOS/FAT/NT Filesystems"
134
Alexey Dobriyan1c6ace02009-01-22 10:37:59 +0300135source "fs/fat/Kconfig"
Alexey Dobriyan9d73ac92009-01-22 10:39:20 +0300136source "fs/ntfs/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700137
138endmenu
Randy Dunlap25fad942008-02-07 00:15:16 -0800139endif # BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700140
141menu "Pseudo filesystems"
142
Alexey Dobriyan6eedf8d2008-07-25 01:48:30 -0700143source "fs/proc/Kconfig"
Alexey Dobriyan5f3a2112009-01-22 10:40:58 +0300144source "fs/sysfs/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700145
Linus Torvalds1da177e2005-04-16 15:20:36 -0700146config TMPFS
147 bool "Virtual memory file system support (former shm fs)"
148 help
149 Tmpfs is a file system which keeps all files in virtual memory.
150
151 Everything in tmpfs is temporary in the sense that no files will be
152 created on your hard drive. The files live in memory and swap
153 space. If you unmount a tmpfs instance, everything stored therein is
154 lost.
155
156 See <file:Documentation/filesystems/tmpfs.txt> for details.
157
Andreas Gruenbacher39f02472006-09-29 02:01:35 -0700158config TMPFS_POSIX_ACL
159 bool "Tmpfs POSIX Access Control Lists"
160 depends on TMPFS
161 select GENERIC_ACL
162 help
163 POSIX Access Control Lists (ACLs) support permissions for users and
164 groups beyond the owner/group/world scheme.
165
166 To learn more about Access Control Lists, visit the POSIX ACLs for
167 Linux website <http://acl.bestbits.at/>.
168
169 If you don't know what Access Control Lists are, say N.
170
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171config HUGETLBFS
172 bool "HugeTLB file system support"
Gerald Schaefer53492b12008-04-30 13:38:46 +0200173 depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
174 (S390 && 64BIT) || BROKEN
Arthur Othienodda27d12006-04-18 22:20:57 -0700175 help
176 hugetlbfs is a filesystem backing for HugeTLB pages, based on
177 ramfs. For architectures that support it, say Y here and read
178 <file:Documentation/vm/hugetlbpage.txt> for details.
179
180 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700181
182config HUGETLB_PAGE
183 def_bool HUGETLBFS
184
Alexey Dobriyan4591dab2009-01-22 10:42:52 +0300185source "fs/configfs/Kconfig"
Joel Becker7063fbf2005-12-15 14:29:43 -0800186
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187endmenu
188
Randy Dunlap67ec7d32009-01-06 14:40:57 -0800189menuconfig MISC_FILESYSTEMS
190 bool "Miscellaneous filesystems"
191 default y
192 ---help---
193 Say Y here to get to see options for various miscellaneous
194 filesystems, such as filesystems that came from other
195 operating systems.
196
197 This option alone does not add any kernel code.
198
199 If you say N, all options in this submenu will be skipped and
200 disabled; if unsure, say Y here.
201
202if MISC_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700203
Alexey Dobriyanbc2de2a2009-01-22 10:48:46 +0300204source "fs/adfs/Kconfig"
Alexey Dobriyan10951bf2009-01-22 10:49:44 +0300205source "fs/affs/Kconfig"
Alexey Dobriyan295c8962009-01-22 10:50:50 +0300206source "fs/ecryptfs/Kconfig"
Alexey Dobriyanb08bac12009-01-22 10:53:24 +0300207source "fs/hfs/Kconfig"
208source "fs/hfsplus/Kconfig"
Alexey Dobriyan0b09eb32009-01-22 10:54:16 +0300209source "fs/befs/Kconfig"
Alexey Dobriyan0ff42382009-01-22 10:55:13 +0300210source "fs/bfs/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700211
212config EFS_FS
213 tristate "EFS file system support (read only) (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200214 depends on BLOCK && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700215 help
216 EFS is an older file system used for non-ISO9660 CD-ROMs and hard
217 disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
218 uses the XFS file system for hard disk partitions however).
219
220 This implementation only offers read-only access. If you don't know
221 what all this is about, it's safe to say N. For more information
222 about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
223
224 To compile the EFS file system support as a module, choose M here: the
225 module will be called efs.
226
Alexey Dobriyan31db6e92008-08-29 07:19:50 +0400227source "fs/jffs2/Kconfig"
Artem Bityutskiy0d7eff82008-07-14 19:08:38 +0300228# UBIFS File system configuration
229source "fs/ubifs/Kconfig"
230
Linus Torvalds1da177e2005-04-16 15:20:36 -0700231config CRAMFS
232 tristate "Compressed ROM file system support (cramfs)"
David Howells93614012006-09-30 20:45:40 +0200233 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700234 select ZLIB_INFLATE
235 help
236 Saying Y here includes support for CramFs (Compressed ROM File
237 System). CramFs is designed to be a simple, small, and compressed
238 file system for ROM based embedded systems. CramFs is read-only,
239 limited to 256MB file systems (with 16MB files), and doesn't support
240 16/32 bits uid/gid, hard links and timestamps.
241
242 See <file:Documentation/filesystems/cramfs.txt> and
243 <file:fs/cramfs/README> for further information.
244
245 To compile this as a module, choose M here: the module will be called
246 cramfs. Note that the root file system (the one containing the
247 directory /) cannot be compiled as a module.
248
249 If unsure, say N.
250
Phillip Lougher6ab5c1c2009-01-05 08:46:28 +0000251config SQUASHFS
252 tristate "SquashFS 4.0 - Squashed file system support"
253 depends on BLOCK
254 select ZLIB_INFLATE
255 help
256 Saying Y here includes support for SquashFS 4.0 (a Compressed
257 Read-Only File System). Squashfs is a highly compressed read-only
258 filesystem for Linux. It uses zlib compression to compress both
259 files, inodes and directories. Inodes in the system are very small
260 and all blocks are packed to minimise data overhead. Block sizes
261 greater than 4K are supported up to a maximum of 1 Mbytes (default
262 block size 128K). SquashFS 4.0 supports 64 bit filesystems and files
263 (larger than 4GB), full uid/gid information, hard links and
264 timestamps.
265
266 Squashfs is intended for general read-only filesystem use, for
267 archival use (i.e. in cases where a .tar.gz file may be used), and in
268 embedded systems where low overhead is needed. Further information
269 and tools are available from http://squashfs.sourceforge.net.
270
271 If you want to compile this as a module ( = code which can be
272 inserted in and removed from the running kernel whenever you want),
273 say M here and read <file:Documentation/modules.txt>. The module
274 will be called squashfs. Note that the root file system (the one
275 containing the directory /) cannot be compiled as a module.
276
277 If unsure, say N.
278
279config SQUASHFS_EMBEDDED
280
281 bool "Additional option for memory-constrained systems"
282 depends on SQUASHFS
283 default n
284 help
285 Saying Y here allows you to specify cache size.
286
287 If unsure, say N.
288
289config SQUASHFS_FRAGMENT_CACHE_SIZE
290 int "Number of fragments cached" if SQUASHFS_EMBEDDED
291 depends on SQUASHFS
292 default "3"
293 help
294 By default SquashFS caches the last 3 fragments read from
295 the filesystem. Increasing this amount may mean SquashFS
296 has to re-read fragments less often from disk, at the expense
297 of extra system memory. Decreasing this amount will mean
298 SquashFS uses less memory at the expense of extra reads from disk.
299
300 Note there must be at least one cached fragment. Anything
301 much more than three will probably not make much difference.
302
Linus Torvalds1da177e2005-04-16 15:20:36 -0700303config VXFS_FS
304 tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
David Howells93614012006-09-30 20:45:40 +0200305 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700306 help
307 FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
308 file system format. VERITAS VxFS(TM) is the standard file system
309 of SCO UnixWare (and possibly others) and optionally available
310 for Sunsoft Solaris, HP-UX and many other operating systems.
311 Currently only readonly access is supported.
312
313 NOTE: the file system type as used by mount(1), mount(2) and
314 fstab(5) is 'vxfs' as it describes the file system format, not
315 the actual driver.
316
317 To compile this as a module, choose M here: the module will be
318 called freevxfs. If unsure, say N.
319
Randy Dunlap25fad942008-02-07 00:15:16 -0800320config MINIX_FS
321 tristate "Minix file system support"
322 depends on BLOCK
323 help
324 Minix is a simple operating system used in many classes about OS's.
325 The minix file system (method to organize files on a hard disk
326 partition or a floppy disk) was the original file system for Linux,
327 but has been superseded by the second extended file system ext2fs.
328 You don't want to use the minix file system on your hard disk
329 because of certain built-in restrictions, but it is sometimes found
330 on older Linux floppy disks. This option will enlarge your kernel
331 by about 28 KB. If unsure, say N.
332
333 To compile this file system support as a module, choose M here: the
334 module will be called minix. Note that the file system of your root
335 partition (the one containing the directory /) cannot be compiled as
336 a module.
337
Bob Copeland63ca8ce2008-07-25 19:45:17 -0700338config OMFS_FS
339 tristate "SonicBlue Optimized MPEG File System support"
340 depends on BLOCK
341 select CRC_ITU_T
342 help
343 This is the proprietary file system used by the Rio Karma music
344 player and ReplayTV DVR. Despite the name, this filesystem is not
345 more efficient than a standard FS for MPEG files, in fact likely
346 the opposite is true. Say Y if you have either of these devices
347 and wish to mount its disk.
348
349 To compile this file system support as a module, choose M here: the
350 module will be called omfs. If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700351
352config HPFS_FS
353 tristate "OS/2 HPFS file system support"
David Howells93614012006-09-30 20:45:40 +0200354 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700355 help
356 OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
357 is the file system used for organizing files on OS/2 hard disk
358 partitions. Say Y if you want to be able to read files from and
359 write files to an OS/2 HPFS partition on your hard drive. OS/2
360 floppies however are in regular MSDOS format, so you don't need this
361 option in order to be able to read them. Read
362 <file:Documentation/filesystems/hpfs.txt>.
363
364 To compile this file system support as a module, choose M here: the
365 module will be called hpfs. If unsure, say N.
366
367
Linus Torvalds1da177e2005-04-16 15:20:36 -0700368config QNX4FS_FS
369 tristate "QNX4 file system support (read only)"
David Howells93614012006-09-30 20:45:40 +0200370 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700371 help
372 This is the file system used by the real-time operating systems
373 QNX 4 and QNX 6 (the latter is also called QNX RTP).
374 Further information is available at <http://www.qnx.com/>.
375 Say Y if you intend to mount QNX hard disks or floppies.
376 Unless you say Y to "QNX4FS read-write support" below, you will
377 only be able to read these file systems.
378
379 To compile this file system support as a module, choose M here: the
380 module will be called qnx4.
381
382 If you don't know whether you need it, then you don't need it:
383 answer N.
384
385config QNX4FS_RW
386 bool "QNX4FS write support (DANGEROUS)"
387 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
388 help
389 Say Y if you want to test write support for QNX4 file systems.
390
391 It's currently broken, so for now:
392 answer N.
393
Randy Dunlap25fad942008-02-07 00:15:16 -0800394config ROMFS_FS
395 tristate "ROM file system support"
396 depends on BLOCK
397 ---help---
398 This is a very small read-only file system mainly intended for
399 initial ram disks of installation disks, but it could be used for
400 other read-only media as well. Read
401 <file:Documentation/filesystems/romfs.txt> for details.
402
403 To compile this file system support as a module, choose M here: the
404 module will be called romfs. Note that the file system of your
405 root partition (the one containing the directory /) cannot be a
406 module.
407
408 If you don't know whether you need it, then you don't need it:
409 answer N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700410
411
412config SYSV_FS
413 tristate "System V/Xenix/V7/Coherent file system support"
David Howells93614012006-09-30 20:45:40 +0200414 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700415 help
416 SCO, Xenix and Coherent are commercial Unix systems for Intel
417 machines, and Version 7 was used on the DEC PDP-11. Saying Y
418 here would allow you to read from their floppies and hard disk
419 partitions.
420
421 If you have floppies or hard disk partitions like that, it is likely
422 that they contain binaries from those other Unix systems; in order
Matt LaPlantecab00892006-10-03 22:36:44 +0200423 to run these binaries, you will want to install linux-abi which is
Linus Torvalds1da177e2005-04-16 15:20:36 -0700424 a set of kernel modules that lets you run SCO, Xenix, Wyse,
425 UnixWare, Dell Unix and System V programs under Linux. It is
426 available via FTP (user: ftp) from
427 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
428 NOTE: that will work only for binaries from Intel-based systems;
429 PDP ones will have to wait until somebody ports Linux to -11 ;-)
430
431 If you only intend to mount files from some other Unix over the
432 network using NFS, you don't need the System V file system support
433 (but you need NFS file system support obviously).
434
435 Note that this option is generally not needed for floppies, since a
436 good portable way to transport files and directories between unixes
437 (and even other operating systems) is given by the tar program ("man
438 tar" or preferably "info tar"). Note also that this option has
439 nothing whatsoever to do with the option "System V IPC". Read about
440 the System V file system in
441 <file:Documentation/filesystems/sysv-fs.txt>.
442 Saying Y here will enlarge your kernel by about 27 KB.
443
444 To compile this as a module, choose M here: the module will be called
445 sysv.
446
447 If you haven't heard about all of this before, it's safe to say N.
448
449
Linus Torvalds1da177e2005-04-16 15:20:36 -0700450config UFS_FS
451 tristate "UFS file system support (read only)"
David Howells93614012006-09-30 20:45:40 +0200452 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700453 help
454 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
455 OpenBSD and NeXTstep) use a file system called UFS. Some System V
456 Unixes can create and mount hard disk partitions and diskettes using
457 this file system as well. Saying Y here will allow you to read from
458 these partitions; if you also want to write to them, say Y to the
459 experimental "UFS file system write support", below. Please read the
460 file <file:Documentation/filesystems/ufs.txt> for more information.
461
462 The recently released UFS2 variant (used in FreeBSD 5.x) is
463 READ-ONLY supported.
464
Linus Torvalds1da177e2005-04-16 15:20:36 -0700465 Note that this option is generally not needed for floppies, since a
466 good portable way to transport files and directories between unixes
467 (and even other operating systems) is given by the tar program ("man
468 tar" or preferably "info tar").
469
470 When accessing NeXTstep files, you may need to convert them from the
471 NeXT character set to the Latin1 character set; use the program
472 recode ("info recode") for this purpose.
473
474 To compile the UFS file system support as a module, choose M here: the
475 module will be called ufs.
476
477 If you haven't heard about all of this before, it's safe to say N.
478
479config UFS_FS_WRITE
480 bool "UFS file system write support (DANGEROUS)"
Evgeniy Dushistov5afb3142006-06-25 05:47:24 -0700481 depends on UFS_FS && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700482 help
483 Say Y here if you want to try writing to UFS partitions. This is
484 experimental, so you should back up your UFS partitions beforehand.
485
Evgeniy Dushistovabf5d152006-06-25 05:47:24 -0700486config UFS_DEBUG
487 bool "UFS debugging"
488 depends on UFS_FS
489 help
490 If you are experiencing any problems with the UFS filesystem, say
491 Y here. This will result in _many_ additional debugging messages to be
492 written to the system log.
493
Randy Dunlap67ec7d32009-01-06 14:40:57 -0800494endif # MISC_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700495
Jan Engelhardtea0985a2007-10-16 23:30:16 -0700496menuconfig NETWORK_FILESYSTEMS
497 bool "Network File Systems"
498 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -0700499 depends on NET
Jan Engelhardtea0985a2007-10-16 23:30:16 -0700500 ---help---
501 Say Y here to get to see options for network filesystems and
502 filesystem-related networking code, such as NFS daemon and
503 RPCSEC security modules.
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400504
Jan Engelhardtea0985a2007-10-16 23:30:16 -0700505 This option alone does not add any kernel code.
506
507 If you say N, all options in this submenu will be skipped and
508 disabled; if unsure, say Y here.
509
510if NETWORK_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700511
512config NFS_FS
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400513 tristate "NFS client support"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700514 depends on INET
515 select LOCKD
516 select SUNRPC
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +0000517 select NFS_ACL_SUPPORT if NFS_V3_ACL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700518 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400519 Choose Y here if you want to access files residing on other
520 computers using Sun's Network File System protocol. To compile
521 this file system support as a module, choose M here: the module
522 will be called nfs.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700523
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400524 To mount file systems exported by NFS servers, you also need to
525 install the user space mount.nfs command which can be found in
526 the Linux nfs-utils package, available from http://linux-nfs.org/.
527 Information about using the mount command is available in the
528 mount(8) man page. More detail about the Linux NFS client
529 implementation is available via the nfs(5) man page.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700530
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400531 Below you can choose which versions of the NFS protocol are
532 available in the kernel to mount NFS servers. Support for NFS
533 version 2 (RFC 1094) is always available when NFS_FS is selected.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700534
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400535 To configure a system which mounts its root file system via NFS
536 at boot time, say Y here, select "Kernel level IP
537 autoconfiguration" in the NETWORK menu, and select "Root file
538 system on NFS" below. You cannot compile this file system as a
539 module in this case.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700540
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400541 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700542
543config NFS_V3
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400544 bool "NFS client support for NFS version 3"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700545 depends on NFS_FS
546 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400547 This option enables support for version 3 of the NFS protocol
548 (RFC 1813) in the kernel's NFS client.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549
550 If unsure, say Y.
551
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +0000552config NFS_V3_ACL
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400553 bool "NFS client support for the NFSv3 ACL protocol extension"
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +0000554 depends on NFS_V3
555 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400556 Some NFS servers support an auxiliary NFSv3 ACL protocol that
557 Sun added to Solaris but never became an official part of the
558 NFS version 3 protocol. This protocol extension allows
559 applications on NFS clients to manipulate POSIX Access Control
560 Lists on files residing on NFS servers. NFS servers enforce
561 ACLs on local files whether this protocol is available or not.
562
563 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
564 protocol extension and you want your NFS client to allow
565 applications to access and modify ACLs on files on the server.
566
567 Most NFS servers don't support the Solaris NFSv3 ACL protocol
568 extension. You can choose N here or specify the "noacl" mount
569 option to prevent your NFS client from trying to use the NFSv3
570 ACL protocol.
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +0000571
572 If unsure, say N.
573
Linus Torvalds1da177e2005-04-16 15:20:36 -0700574config NFS_V4
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400575 bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700576 depends on NFS_FS && EXPERIMENTAL
577 select RPCSEC_GSS_KRB5
578 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400579 This option enables support for version 4 of the NFS protocol
580 (RFC 3530) in the kernel's NFS client.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700581
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400582 To mount NFS servers using NFSv4, you also need to install user
583 space programs which can be found in the Linux nfs-utils package,
584 available from http://linux-nfs.org/.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700585
586 If unsure, say N.
587
Chuck Lever6fb1bc12008-05-21 17:09:04 -0400588config ROOT_NFS
589 bool "Root file system on NFS"
590 depends on NFS_FS=y && IP_PNP
591 help
592 If you want your system to mount its root file system via NFS,
593 choose Y here. This is common practice for managing systems
594 without local permanent storage. For details, read
595 <file:Documentation/filesystems/nfsroot.txt>.
596
597 Most people say N here.
598
Linus Torvalds1da177e2005-04-16 15:20:36 -0700599config NFSD
600 tristate "NFS server support"
601 depends on INET
602 select LOCKD
603 select SUNRPC
604 select EXPORTFS
Herbert Xuf05e15b2006-06-26 00:25:39 -0700605 select NFS_ACL_SUPPORT if NFSD_V2_ACL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700606 help
Chuck Leverd24455b2008-02-11 17:11:54 -0500607 Choose Y here if you want to allow other computers to access
608 files residing on this system using Sun's Network File System
609 protocol. To compile the NFS server support as a module,
610 choose M here: the module will be called nfsd.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700611
Chuck Leverd24455b2008-02-11 17:11:54 -0500612 You may choose to use a user-space NFS server instead, in which
613 case you can choose N here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700614
Chuck Leverd24455b2008-02-11 17:11:54 -0500615 To export local file systems using NFS, you also need to install
616 user space programs which can be found in the Linux nfs-utils
617 package, available from http://linux-nfs.org/. More detail about
618 the Linux NFS server implementation is available via the
619 exports(5) man page.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700620
Chuck Leverd24455b2008-02-11 17:11:54 -0500621 Below you can choose which versions of the NFS protocol are
622 available to clients mounting the NFS server on this system.
623 Support for NFS version 2 (RFC 1094) is always available when
624 CONFIG_NFSD is selected.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700625
Chuck Leverd24455b2008-02-11 17:11:54 -0500626 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700627
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +0000628config NFSD_V2_ACL
629 bool
630 depends on NFSD
631
Linus Torvalds1da177e2005-04-16 15:20:36 -0700632config NFSD_V3
Chuck Leverd24455b2008-02-11 17:11:54 -0500633 bool "NFS server support for NFS version 3"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700634 depends on NFSD
635 help
Chuck Leverd24455b2008-02-11 17:11:54 -0500636 This option enables support in your system's NFS server for
637 version 3 of the NFS protocol (RFC 1813).
638
639 If unsure, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700640
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +0000641config NFSD_V3_ACL
Chuck Leverd24455b2008-02-11 17:11:54 -0500642 bool "NFS server support for the NFSv3 ACL protocol extension"
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +0000643 depends on NFSD_V3
Chuck Lever78dd0992008-02-11 17:12:31 -0500644 select NFSD_V2_ACL
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +0000645 help
Chuck Leverd24455b2008-02-11 17:11:54 -0500646 Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
647 never became an official part of the NFS version 3 protocol.
648 This protocol extension allows applications on NFS clients to
649 manipulate POSIX Access Control Lists on files residing on NFS
650 servers. NFS servers enforce POSIX ACLs on local files whether
651 this protocol is available or not.
652
653 This option enables support in your system's NFS server for the
654 NFSv3 ACL protocol extension allowing NFS clients to manipulate
655 POSIX ACLs on files exported by your system's NFS server. NFS
656 clients which support the Solaris NFSv3 ACL protocol can then
657 access and modify ACLs on your NFS server.
658
659 To store ACLs on your NFS server, you also need to enable ACL-
660 related CONFIG options for your local file systems of choice.
661
662 If unsure, say N.
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +0000663
Linus Torvalds1da177e2005-04-16 15:20:36 -0700664config NFSD_V4
Chuck Leverd24455b2008-02-11 17:11:54 -0500665 bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
Chuck Lever1a448fd2008-03-27 16:34:54 -0400666 depends on NFSD && PROC_FS && EXPERIMENTAL
667 select NFSD_V3
Chuck Lever89206952008-02-11 17:12:24 -0500668 select FS_POSIX_ACL
J. Bruce Fields42ed95c2007-07-17 04:04:41 -0700669 select RPCSEC_GSS_KRB5
Linus Torvalds1da177e2005-04-16 15:20:36 -0700670 help
Chuck Leverd24455b2008-02-11 17:11:54 -0500671 This option enables support in your system's NFS server for
672 version 4 of the NFS protocol (RFC 3530).
673
674 To export files using NFSv4, you need to install additional user
675 space programs which can be found in the Linux nfs-utils package,
676 available from http://linux-nfs.org/.
677
Linus Torvalds1da177e2005-04-16 15:20:36 -0700678 If unsure, say N.
679
Linus Torvalds1da177e2005-04-16 15:20:36 -0700680config LOCKD
681 tristate
682
683config LOCKD_V4
684 bool
685 depends on NFSD_V3 || NFS_V3
686 default y
687
688config EXPORTFS
689 tristate
690
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +0000691config NFS_ACL_SUPPORT
692 tristate
693 select FS_POSIX_ACL
694
695config NFS_COMMON
696 bool
697 depends on NFSD || NFS_FS
698 default y
699
Linus Torvalds1da177e2005-04-16 15:20:36 -0700700config SUNRPC
701 tristate
702
703config SUNRPC_GSS
704 tristate
705
\"Talpey, Thomas\c3a57ed2007-09-10 13:49:15 -0400706config SUNRPC_XPRT_RDMA
James Lentini3211e4e2008-01-28 12:09:28 -0500707 tristate
\"Talpey, Thomas\113632d2007-09-20 17:37:58 -0400708 depends on SUNRPC && INFINIBAND && EXPERIMENTAL
James Lentini3211e4e2008-01-28 12:09:28 -0500709 default SUNRPC && INFINIBAND
Chuck Lever327a2992008-03-14 14:15:11 -0400710 help
711 This option enables an RPC client transport capability that
712 allows the NFS client to mount servers via an RDMA-enabled
713 transport.
714
715 To compile RPC client RDMA transport support as a module,
716 choose M here: the module will be called xprtrdma.
717
718 If unsure, say N.
\"Talpey, Thomas\c3a57ed2007-09-10 13:49:15 -0400719
Chuck Levera26cfad2008-08-18 19:34:16 -0400720config SUNRPC_REGISTER_V4
721 bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
722 depends on SUNRPC && EXPERIMENTAL
723 default n
724 help
725 Sun added support for registering RPC services at an IPv6
726 address by creating two new versions of the rpcbind protocol
727 (RFC 1833).
728
729 This option enables support in the kernel RPC server for
730 registering kernel RPC services via version 4 of the rpcbind
731 protocol. If you enable this option, you must run a portmapper
732 daemon that supports rpcbind protocol version 4.
733
734 Serving NFS over IPv6 from knfsd (the kernel's NFS server)
735 requires that you enable this option and use a portmapper that
736 supports rpcbind version 4.
737
738 If unsure, say N to get traditional behavior (register kernel
739 RPC services using only rpcbind version 2). Distributions
740 using the legacy Linux portmapper daemon must say N here.
741
Linus Torvalds1da177e2005-04-16 15:20:36 -0700742config RPCSEC_GSS_KRB5
743 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
744 depends on SUNRPC && EXPERIMENTAL
745 select SUNRPC_GSS
746 select CRYPTO
747 select CRYPTO_MD5
748 select CRYPTO_DES
Patrick McHardybcbaecb2006-10-25 16:49:36 +1000749 select CRYPTO_CBC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700750 help
Chuck Lever327a2992008-03-14 14:15:11 -0400751 Choose Y here to enable Secure RPC using the Kerberos version 5
752 GSS-API mechanism (RFC 1964).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700753
Chuck Lever327a2992008-03-14 14:15:11 -0400754 Secure RPC calls with Kerberos require an auxiliary user-space
755 daemon which may be found in the Linux nfs-utils package
756 available from http://linux-nfs.org/. In addition, user-space
757 Kerberos support should be installed.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700758
759 If unsure, say N.
760
761config RPCSEC_GSS_SPKM3
762 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
763 depends on SUNRPC && EXPERIMENTAL
764 select SUNRPC_GSS
765 select CRYPTO
766 select CRYPTO_MD5
767 select CRYPTO_DES
J. Bruce Fieldsdf6db302006-03-20 23:25:10 -0500768 select CRYPTO_CAST5
Patrick McHardybcbaecb2006-10-25 16:49:36 +1000769 select CRYPTO_CBC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700770 help
Chuck Lever327a2992008-03-14 14:15:11 -0400771 Choose Y here to enable Secure RPC using the SPKM3 public key
772 GSS-API mechansim (RFC 2025).
Linus Torvalds1da177e2005-04-16 15:20:36 -0700773
Chuck Lever327a2992008-03-14 14:15:11 -0400774 Secure RPC calls with SPKM3 require an auxiliary userspace
775 daemon which may be found in the Linux nfs-utils package
776 available from http://linux-nfs.org/.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700777
778 If unsure, say N.
779
780config SMB_FS
Andrew Mortonc7736332008-02-05 14:22:58 -0800781 tristate "SMB file system support (OBSOLETE, please use CIFS)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700782 depends on INET
783 select NLS
784 help
785 SMB (Server Message Block) is the protocol Windows for Workgroups
786 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
787 files and printers over local networks. Saying Y here allows you to
788 mount their file systems (often called "shares" in this context) and
789 access them just like any other Unix directory. Currently, this
790 works only if the Windows machines use TCP/IP as the underlying
791 transport protocol, and not NetBEUI. For details, read
792 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
793 available from <http://www.tldp.org/docs.html#howto>.
794
795 Note: if you just want your box to act as an SMB *server* and make
796 files and printing services available to Windows clients (which need
797 to have a TCP/IP stack), you don't need to say Y here; you can use
798 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
799 for that.
800
801 General information about how to connect Linux, Windows machines and
802 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
803
Andrew Mortonc7736332008-02-05 14:22:58 -0800804 To compile the SMB support as a module, choose M here:
805 the module will be called smbfs. Most people say N, however.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700806
807config SMB_NLS_DEFAULT
808 bool "Use a default NLS"
809 depends on SMB_FS
810 help
811 Enabling this will make smbfs use nls translations by default. You
812 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
813 settings and you need to give the default nls for the SMB server as
814 CONFIG_SMB_NLS_REMOTE.
815
816 The nls settings can be changed at mount time, if your smbmount
817 supports that, using the codepage and iocharset parameters.
818
819 smbmount from samba 2.2.0 or later supports this.
820
821config SMB_NLS_REMOTE
822 string "Default Remote NLS Option"
823 depends on SMB_NLS_DEFAULT
824 default "cp437"
825 help
826 This setting allows you to specify a default value for which
827 codepage the server uses. If this field is left blank no
828 translations will be done by default. The local codepage/charset
829 default to CONFIG_NLS_DEFAULT.
830
831 The nls settings can be changed at mount time, if your smbmount
832 supports that, using the codepage and iocharset parameters.
833
834 smbmount from samba 2.2.0 or later supports this.
835
Alexey Dobriyanbb26b962008-10-18 20:28:49 -0700836source "fs/cifs/Kconfig"
Steve French61033352008-01-09 16:21:36 +0000837
Linus Torvalds1da177e2005-04-16 15:20:36 -0700838config NCP_FS
839 tristate "NCP file system support (to mount NetWare volumes)"
840 depends on IPX!=n || INET
841 help
842 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
843 used by Novell NetWare clients to talk to file servers. It is to
844 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
845 to mount NetWare file server volumes and to access them just like
846 any other Unix directory. For details, please read the file
847 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
848 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
849
850 You do not have to say Y here if you want your Linux box to act as a
851 file *server* for Novell NetWare clients.
852
853 General information about how to connect Linux, Windows machines and
854 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
855
856 To compile this as a module, choose M here: the module will be called
857 ncpfs. Say N unless you are connected to a Novell network.
858
859source "fs/ncpfs/Kconfig"
860
861config CODA_FS
862 tristate "Coda file system support (advanced network fs)"
863 depends on INET
864 help
865 Coda is an advanced network file system, similar to NFS in that it
866 enables you to mount file systems of a remote server and access them
867 with regular Unix commands as if they were sitting on your hard
868 disk. Coda has several advantages over NFS: support for
869 disconnected operation (e.g. for laptops), read/write server
870 replication, security model for authentication and encryption,
871 persistent client caches and write back caching.
872
873 If you say Y here, your Linux box will be able to act as a Coda
874 *client*. You will need user level code as well, both for the
875 client and server. Servers are currently user level, i.e. they need
876 no kernel support. Please read
877 <file:Documentation/filesystems/coda.txt> and check out the Coda
878 home page <http://www.coda.cs.cmu.edu/>.
879
880 To compile the coda client support as a module, choose M here: the
881 module will be called coda.
882
Linus Torvalds1da177e2005-04-16 15:20:36 -0700883config AFS_FS
David Howells64aaa4f2006-11-16 01:19:27 -0800884 tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700885 depends on INET && EXPERIMENTAL
David Howells08e0e7c2007-04-26 15:55:03 -0700886 select AF_RXRPC
Linus Torvalds1da177e2005-04-16 15:20:36 -0700887 help
888 If you say Y here, you will get an experimental Andrew File System
889 driver. It currently only supports unsecured read-only AFS access.
890
Matt LaPlantecc2e2762006-10-03 22:22:29 +0200891 See <file:Documentation/filesystems/afs.txt> for more information.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700892
893 If unsure, say N.
894
David Howells08e0e7c2007-04-26 15:55:03 -0700895config AFS_DEBUG
896 bool "AFS dynamic debugging"
897 depends on AFS_FS
898 help
899 Say Y here to make runtime controllable debugging messages appear.
900
901 See <file:Documentation/filesystems/afs.txt> for more information.
902
903 If unsure, say N.
904
Eric Van Hensbergen93fa58c2005-09-09 13:04:18 -0700905config 9P_FS
906 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
Latchesar Ionkovbd238fb2007-07-10 17:57:28 -0500907 depends on INET && NET_9P && EXPERIMENTAL
Eric Van Hensbergen93fa58c2005-09-09 13:04:18 -0700908 help
909 If you say Y here, you will get experimental support for
910 Plan 9 resource sharing via the 9P2000 protocol.
911
912 See <http://v9fs.sf.net> for more information.
913
914 If unsure, say N.
915
Jan Engelhardtea0985a2007-10-16 23:30:16 -0700916endif # NETWORK_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700917
David Howells93614012006-09-30 20:45:40 +0200918if BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700919menu "Partition Types"
920
921source "fs/partitions/Kconfig"
922
923endmenu
David Howells93614012006-09-30 20:45:40 +0200924endif
Linus Torvalds1da177e2005-04-16 15:20:36 -0700925
926source "fs/nls/Kconfig"
David Teiglande7fd4172006-01-18 09:30:29 +0000927source "fs/dlm/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -0700928
929endmenu