blob: b39675cc0fc068e2326f1e516453eed2703aeff4 [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"
Linus Torvalds1da177e2005-04-16 15:20:36 -070052
Mark Fashehb4e40a52005-12-15 14:31:24 -080053config OCFS2_FS
Mark Fasheh02ed8412006-09-14 10:28:06 -070054 tristate "OCFS2 file system support"
55 depends on NET && SYSFS
Mark Fashehb4e40a52005-12-15 14:31:24 -080056 select CONFIGFS_FS
Joel Becker2b4e30f2008-09-03 20:03:41 -070057 select JBD2
Mark Fashehb4e40a52005-12-15 14:31:24 -080058 select CRC32
Jan Kara1a224ad2008-08-20 15:43:36 +020059 select QUOTA
60 select QUOTA_TREE
Mark Fashehb4e40a52005-12-15 14:31:24 -080061 help
62 OCFS2 is a general purpose extent based shared disk cluster file
63 system with many similarities to ext3. It supports 64 bit inode
64 numbers, and has automatically extending metadata groups which may
65 also make it attractive for non-clustered use.
66
67 You'll want to install the ocfs2-tools package in order to at least
68 get "mount.ocfs2".
69
70 Project web page: http://oss.oracle.com/projects/ocfs2
71 Tools web page: http://oss.oracle.com/projects/ocfs2-tools
72 OCFS2 mailing lists: http://oss.oracle.com/projects/ocfs2/mailman/
73
Mark Fasheh1252c432007-10-30 12:09:03 -070074 For more information on OCFS2, see the file
75 <file:Documentation/filesystems/ocfs2.txt>.
Mark Fashehb4e40a52005-12-15 14:31:24 -080076
Joel Becker9341d222008-03-04 17:58:56 -080077config OCFS2_FS_O2CB
78 tristate "O2CB Kernelspace Clustering"
79 depends on OCFS2_FS
80 default y
81 help
82 OCFS2 includes a simple kernelspace clustering package, the OCFS2
83 Cluster Base. It only requires a very small userspace component
84 to configure it. This comes with the standard ocfs2-tools package.
85 O2CB is limited to maintaining a cluster for OCFS2 file systems.
86 It cannot manage any other cluster applications.
87
88 It is always safe to say Y here, as the clustering method is
89 run-time selectable.
90
91config OCFS2_FS_USERSPACE_CLUSTER
92 tristate "OCFS2 Userspace Clustering"
93 depends on OCFS2_FS && DLM
94 default y
95 help
96 This option will allow OCFS2 to use userspace clustering services
97 in conjunction with the DLM in fs/dlm. If you are using a
98 userspace cluster manager, say Y here.
99
100 It is safe to say Y, as the clustering method is run-time
101 selectable.
102
Sunil Mushrance7231e2008-05-13 13:45:14 -0700103config OCFS2_FS_STATS
104 bool "OCFS2 statistics"
105 depends on OCFS2_FS
106 default y
107 help
108 This option allows some fs statistics to be captured. Enabling
109 this option may increase the memory consumption.
110
Joel Becker2b388c62006-05-10 18:28:59 -0700111config OCFS2_DEBUG_MASKLOG
112 bool "OCFS2 logging support"
113 depends on OCFS2_FS
114 default y
115 help
116 The ocfs2 filesystem has an extensive logging system. The system
117 allows selection of events to log via files in /sys/o2cb/logmask/.
118 This option will enlarge your kernel, but it allows debugging of
119 ocfs2 filesystem issues.
120
Jan Kara5a58c3e2007-11-13 19:59:33 +0100121config OCFS2_DEBUG_FS
122 bool "OCFS2 expensive checks"
123 depends on OCFS2_FS
124 default n
125 help
126 This option will enable expensive consistency checks. Enable
127 this option for debugging only as it is likely to decrease
128 performance of the filesystem.
129
Tiger Yanga68979b2008-11-14 11:17:52 +0800130config OCFS2_FS_POSIX_ACL
131 bool "OCFS2 POSIX Access Control Lists"
132 depends on OCFS2_FS
133 select FS_POSIX_ACL
134 default n
135 help
136 Posix Access Control Lists (ACLs) support permissions for users and
137 groups beyond the owner/group/world scheme.
138
Chris Mason60582d12008-09-25 12:25:16 -0400139config BTRFS_FS
140 tristate "Btrfs filesystem (EXPERIMENTAL) Unstable disk format"
141 depends on EXPERIMENTAL
142 select LIBCRC32C
Chris Masonc8b97812008-10-29 14:49:59 -0400143 select ZLIB_INFLATE
144 select ZLIB_DEFLATE
Chris Mason60582d12008-09-25 12:25:16 -0400145 help
146 Btrfs is a new filesystem with extents, writable snapshotting,
147 support for multiple devices and many more features.
148
149 Btrfs is highly experimental, and THE DISK FORMAT IS NOT YET
150 FINALIZED. You should say N here unless you are interested in
151 testing Btrfs with non-critical data.
152
153 To compile this file system support as a module, choose M here. The
154 module will be called btrfs.
155
156 If unsure, say N.
157
Randy Dunlap25fad942008-02-07 00:15:16 -0800158endif # BLOCK
159
Eric Paris272eb012008-12-17 13:59:41 -0500160source "fs/notify/Kconfig"
Amy Griffis2d9048e2006-06-01 13:10:59 -0700161
Linus Torvalds1da177e2005-04-16 15:20:36 -0700162config QUOTA
163 bool "Quota support"
164 help
165 If you say Y here, you will be able to set per user limits for disk
166 usage (also called disk quotas). Currently, it works for the
167 ext2, ext3, and reiserfs file system. ext3 also supports journalled
168 quotas for which you don't need to run quotacheck(8) after an unclean
Adrian Bunk919532a2005-09-06 15:17:22 -0700169 shutdown.
170 For further details, read the Quota mini-HOWTO, available from
Linus Torvalds1da177e2005-04-16 15:20:36 -0700171 <http://www.tldp.org/docs.html#howto>, or the documentation provided
172 with the quota tools. Probably the quota support is only useful for
173 multi user systems. If unsure, say N.
174
Jan Kara8e893462007-10-16 23:29:31 -0700175config QUOTA_NETLINK_INTERFACE
176 bool "Report quota messages through netlink interface"
177 depends on QUOTA && NET
178 help
179 If you say Y here, quota warnings (about exceeding softlimit, reaching
180 hardlimit, etc.) will be reported through netlink interface. If unsure,
181 say Y.
182
183config PRINT_QUOTA_WARNING
184 bool "Print quota warnings to console (OBSOLETE)"
185 depends on QUOTA
186 default y
187 help
188 If you say Y here, quota warnings (about exceeding softlimit, reaching
189 hardlimit, etc.) will be printed to the process' controlling terminal.
190 Note that this behavior is currently deprecated and may go away in
191 future. Please use notification via netlink socket instead.
192
Jan Kara1ccd14b2008-09-22 05:54:49 +0200193# Generic support for tree structured quota files. Seleted when needed.
194config QUOTA_TREE
195 tristate
196
Linus Torvalds1da177e2005-04-16 15:20:36 -0700197config QFMT_V1
198 tristate "Old quota format support"
199 depends on QUOTA
200 help
201 This quota format was (is) used by kernels earlier than 2.4.22. If
202 you have quota working and you don't want to convert to new quota
203 format say Y here.
204
205config QFMT_V2
206 tristate "Quota format v2 support"
207 depends on QUOTA
Jan Kara1ccd14b2008-09-22 05:54:49 +0200208 select QUOTA_TREE
Linus Torvalds1da177e2005-04-16 15:20:36 -0700209 help
210 This quota format allows using quotas with 32-bit UIDs/GIDs. If you
Adrian Bunk919532a2005-09-06 15:17:22 -0700211 need this functionality say Y here.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700212
213config QUOTACTL
214 bool
215 depends on XFS_QUOTA || QUOTA
216 default y
217
Linus Torvalds1da177e2005-04-16 15:20:36 -0700218config AUTOFS_FS
219 tristate "Kernel automounter support"
220 help
221 The automounter is a tool to automatically mount remote file systems
222 on demand. This implementation is partially kernel-based to reduce
223 overhead in the already-mounted case; this is unlike the BSD
224 automounter (amd), which is a pure user space daemon.
225
226 To use the automounter you need the user-space tools from the autofs
227 package; you can find the location in <file:Documentation/Changes>.
228 You also want to answer Y to "NFS file system support", below.
229
230 If you want to use the newer version of the automounter with more
231 features, say N here and say Y to "Kernel automounter v4 support",
232 below.
233
234 To compile this support as a module, choose M here: the module will be
235 called autofs.
236
237 If you are not a part of a fairly large, distributed network, you
238 probably do not need an automounter, and can say N here.
239
240config AUTOFS4_FS
241 tristate "Kernel automounter version 4 support (also supports v3)"
242 help
243 The automounter is a tool to automatically mount remote file systems
244 on demand. This implementation is partially kernel-based to reduce
245 overhead in the already-mounted case; this is unlike the BSD
246 automounter (amd), which is a pure user space daemon.
247
248 To use the automounter you need the user-space tools from
249 <ftp://ftp.kernel.org/pub/linux/daemons/autofs/v4/>; you also
250 want to answer Y to "NFS file system support", below.
251
252 To compile this support as a module, choose M here: the module will be
253 called autofs4. You will need to add "alias autofs autofs4" to your
254 modules configuration file.
255
256 If you are not a part of a fairly large, distributed network or
257 don't have a laptop which needs to dynamically reconfigure to the
258 local network, you probably do not need an automounter, and can say
259 N here.
260
Miklos Szeredi04578f12005-09-09 13:10:22 -0700261config FUSE_FS
Robert P. J. Day37194d02008-10-16 16:08:57 +0200262 tristate "FUSE (Filesystem in Userspace) support"
Miklos Szeredi04578f12005-09-09 13:10:22 -0700263 help
264 With FUSE it is possible to implement a fully functional filesystem
265 in a userspace program.
266
267 There's also companion library: libfuse. This library along with
268 utilities is available from the FUSE homepage:
269 <http://fuse.sourceforge.net/>
270
Miklos Szeredi909021e2005-09-27 21:45:20 -0700271 See <file:Documentation/filesystems/fuse.txt> for more information.
272 See <file:Documentation/Changes> for needed library/utility version.
273
Miklos Szeredi04578f12005-09-09 13:10:22 -0700274 If you want to develop a userspace FS, or if you want to use
275 a filesystem based on FUSE, answer Y or M.
276
Randy Dunlapf2fbc6c2006-10-19 23:28:35 -0700277config GENERIC_ACL
278 bool
279 select FS_POSIX_ACL
280
David Howells93614012006-09-30 20:45:40 +0200281if BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700282menu "CD-ROM/DVD Filesystems"
283
284config ISO9660_FS
285 tristate "ISO 9660 CDROM file system support"
286 help
287 This is the standard file system used on CD-ROMs. It was previously
288 known as "High Sierra File System" and is called "hsfs" on other
289 Unix systems. The so-called Rock-Ridge extensions which allow for
290 long Unix filenames and symbolic links are also supported by this
291 driver. If you have a CD-ROM drive and want to do more with it than
292 just listen to audio CDs and watch its LEDs, say Y (and read
293 <file:Documentation/filesystems/isofs.txt> and the CD-ROM-HOWTO,
294 available from <http://www.tldp.org/docs.html#howto>), thereby
295 enlarging your kernel by about 27 KB; otherwise say N.
296
297 To compile this file system support as a module, choose M here: the
298 module will be called isofs.
299
300config JOLIET
301 bool "Microsoft Joliet CDROM extensions"
302 depends on ISO9660_FS
303 select NLS
304 help
305 Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system
306 which allows for long filenames in unicode format (unicode is the
307 new 16 bit character code, successor to ASCII, which encodes the
308 characters of almost all languages of the world; see
309 <http://www.unicode.org/> for more information). Say Y here if you
310 want to be able to read Joliet CD-ROMs under Linux.
311
312config ZISOFS
313 bool "Transparent decompression extension"
314 depends on ISO9660_FS
315 select ZLIB_INFLATE
316 help
317 This is a Linux-specific extension to RockRidge which lets you store
318 data in compressed form on a CD-ROM and have it transparently
319 decompressed when the CD-ROM is accessed. See
320 <http://www.kernel.org/pub/linux/utils/fs/zisofs/> for the tools
321 necessary to create such a filesystem. Say Y here if you want to be
322 able to read such compressed CD-ROMs.
323
Linus Torvalds1da177e2005-04-16 15:20:36 -0700324config UDF_FS
325 tristate "UDF file system support"
Bob Copelandf845fce2008-04-17 09:47:48 +0200326 select CRC_ITU_T
Linus Torvalds1da177e2005-04-16 15:20:36 -0700327 help
328 This is the new file system used on some CD-ROMs and DVDs. Say Y if
329 you intend to mount DVD discs or CDRW's written in packet mode, or
330 if written to by other UDF utilities, such as DirectCD.
331 Please read <file:Documentation/filesystems/udf.txt>.
332
333 To compile this file system support as a module, choose M here: the
334 module will be called udf.
335
336 If unsure, say N.
337
338config UDF_NLS
339 bool
340 default y
341 depends on (UDF_FS=m && NLS) || (UDF_FS=y && NLS=y)
342
343endmenu
Randy Dunlap25fad942008-02-07 00:15:16 -0800344endif # BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700345
David Howells93614012006-09-30 20:45:40 +0200346if BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700347menu "DOS/FAT/NT Filesystems"
348
349config FAT_FS
350 tristate
351 select NLS
352 help
353 If you want to use one of the FAT-based file systems (the MS-DOS and
354 VFAT (Windows 95) file systems), then you must say Y or M here
355 to include FAT support. You will then be able to mount partitions or
356 diskettes with FAT-based file systems and transparently access the
357 files on them, i.e. MSDOS files will look and behave just like all
358 other Unix files.
359
360 This FAT support is not a file system in itself, it only provides
361 the foundation for the other file systems. You will have to say Y or
362 M to at least one of "MSDOS fs support" or "VFAT fs support" in
363 order to make use of it.
364
365 Another way to read and write MSDOS floppies and hard drive
366 partitions from within Linux (but not transparently) is with the
367 mtools ("man mtools") program suite. You don't need to say Y here in
368 order to do that.
369
370 If you need to move large files on floppies between a DOS and a
371 Linux box, say Y here, mount the floppy under Linux with an MSDOS
372 file system and use GNU tar's M option. GNU tar is a program
373 available for Unix and DOS ("man tar" or "info tar").
374
Linus Torvalds1da177e2005-04-16 15:20:36 -0700375 The FAT support will enlarge your kernel by about 37 KB. If unsure,
376 say Y.
377
378 To compile this as a module, choose M here: the module will be called
379 fat. Note that if you compile the FAT support as a module, you
380 cannot compile any of the FAT-based file systems into the kernel
381 -- they will have to be modules as well.
382
383config MSDOS_FS
384 tristate "MSDOS fs support"
385 select FAT_FS
386 help
387 This allows you to mount MSDOS partitions of your hard drive (unless
388 they are compressed; to access compressed MSDOS partitions under
389 Linux, you can either use the DOS emulator DOSEMU, described in the
390 DOSEMU-HOWTO, available from
391 <http://www.tldp.org/docs.html#howto>, or try dmsdosfs in
392 <ftp://ibiblio.org/pub/Linux/system/filesystems/dosfs/>. If you
393 intend to use dosemu with a non-compressed MSDOS partition, say Y
394 here) and MSDOS floppies. This means that file access becomes
395 transparent, i.e. the MSDOS files look and behave just like all
396 other Unix files.
397
398 If you have Windows 95 or Windows NT installed on your MSDOS
399 partitions, you should use the VFAT file system (say Y to "VFAT fs
400 support" below), or you will not be able to see the long filenames
401 generated by Windows 95 / Windows NT.
402
403 This option will enlarge your kernel by about 7 KB. If unsure,
404 answer Y. This will only work if you said Y to "DOS FAT fs support"
405 as well. To compile this as a module, choose M here: the module will
406 be called msdos.
407
408config VFAT_FS
409 tristate "VFAT (Windows-95) fs support"
410 select FAT_FS
411 help
412 This option provides support for normal Windows file systems with
413 long filenames. That includes non-compressed FAT-based file systems
414 used by Windows 95, Windows 98, Windows NT 4.0, and the Unix
415 programs from the mtools package.
416
417 The VFAT support enlarges your kernel by about 10 KB and it only
418 works if you said Y to the "DOS FAT fs support" above. Please read
419 the file <file:Documentation/filesystems/vfat.txt> for details. If
420 unsure, say Y.
421
422 To compile this as a module, choose M here: the module will be called
423 vfat.
424
425config FAT_DEFAULT_CODEPAGE
426 int "Default codepage for FAT"
427 depends on MSDOS_FS || VFAT_FS
428 default 437
429 help
430 This option should be set to the codepage of your FAT filesystems.
431 It can be overridden with the "codepage" mount option.
432 See <file:Documentation/filesystems/vfat.txt> for more information.
433
434config FAT_DEFAULT_IOCHARSET
435 string "Default iocharset for FAT"
436 depends on VFAT_FS
437 default "iso8859-1"
438 help
439 Set this to the default input/output character set you'd
440 like FAT to use. It should probably match the character set
441 that most of your FAT filesystems use, and can be overridden
442 with the "iocharset" mount option for FAT filesystems.
443 Note that "utf8" is not recommended for FAT filesystems.
444 If unsure, you shouldn't set "utf8" here.
445 See <file:Documentation/filesystems/vfat.txt> for more information.
446
447config NTFS_FS
448 tristate "NTFS file system support"
449 select NLS
450 help
451 NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.
452
453 Saying Y or M here enables read support. There is partial, but
454 safe, write support available. For write support you must also
455 say Y to "NTFS write support" below.
456
457 There are also a number of user-space tools available, called
458 ntfsprogs. These include ntfsundelete and ntfsresize, that work
459 without NTFS support enabled in the kernel.
460
461 This is a rewrite from scratch of Linux NTFS support and replaced
462 the old NTFS code starting with Linux 2.5.11. A backport to
463 the Linux 2.4 kernel series is separately available as a patch
464 from the project web site.
465
466 For more information see <file:Documentation/filesystems/ntfs.txt>
Jess Guerrero337e2ab2008-07-04 09:59:50 -0700467 and <http://www.linux-ntfs.org/>.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700468
469 To compile this file system support as a module, choose M here: the
470 module will be called ntfs.
471
472 If you are not using Windows NT, 2000, XP or 2003 in addition to
473 Linux on your computer it is safe to say N.
474
475config NTFS_DEBUG
476 bool "NTFS debugging support"
477 depends on NTFS_FS
478 help
479 If you are experiencing any problems with the NTFS file system, say
480 Y here. This will result in additional consistency checks to be
481 performed by the driver as well as additional debugging messages to
482 be written to the system log. Note that debugging messages are
483 disabled by default. To enable them, supply the option debug_msgs=1
484 at the kernel command line when booting the kernel or as an option
485 to insmod when loading the ntfs module. Once the driver is active,
486 you can enable debugging messages by doing (as root):
487 echo 1 > /proc/sys/fs/ntfs-debug
488 Replacing the "1" with "0" would disable debug messages.
489
490 If you leave debugging messages disabled, this results in little
491 overhead, but enabling debug messages results in very significant
492 slowdown of the system.
493
494 When reporting bugs, please try to have available a full dump of
495 debugging messages while the misbehaviour was occurring.
496
497config NTFS_RW
498 bool "NTFS write support"
499 depends on NTFS_FS
500 help
501 This enables the partial, but safe, write support in the NTFS driver.
502
503 The only supported operation is overwriting existing files, without
504 changing the file length. No file or directory creation, deletion or
505 renaming is possible. Note only non-resident files can be written to
506 so you may find that some very small files (<500 bytes or so) cannot
507 be written to.
508
509 While we cannot guarantee that it will not damage any data, we have
510 so far not received a single report where the driver would have
511 damaged someones data so we assume it is perfectly safe to use.
512
513 Note: While write support is safe in this version (a rewrite from
514 scratch of the NTFS support), it should be noted that the old NTFS
515 write support, included in Linux 2.5.10 and before (since 1997),
516 is not safe.
517
518 This is currently useful with TopologiLinux. TopologiLinux is run
519 on top of any DOS/Microsoft Windows system without partitioning your
520 hard disk. Unlike other Linux distributions TopologiLinux does not
521 need its own partition. For more information see
522 <http://topologi-linux.sourceforge.net/>
523
524 It is perfectly safe to say N here.
525
526endmenu
Randy Dunlap25fad942008-02-07 00:15:16 -0800527endif # BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700528
529menu "Pseudo filesystems"
530
Alexey Dobriyan6eedf8d2008-07-25 01:48:30 -0700531source "fs/proc/Kconfig"
Eric W. Biedermanb89a8172006-09-27 01:51:04 -0700532
Linus Torvalds1da177e2005-04-16 15:20:36 -0700533config SYSFS
534 bool "sysfs file system support" if EMBEDDED
535 default y
536 help
537 The sysfs filesystem is a virtual filesystem that the kernel uses to
538 export internal kernel objects, their attributes, and their
539 relationships to one another.
540
541 Users can use sysfs to ascertain useful information about the running
542 kernel, such as the devices the kernel has discovered on each bus and
543 which driver each is bound to. sysfs can also be used to tune devices
544 and other kernel subsystems.
545
546 Some system agents rely on the information in sysfs to operate.
547 /sbin/hotplug uses device and object attributes in sysfs to assist in
Jan Engelhardt03a67a42006-11-30 05:32:19 +0100548 delegating policy decisions, like persistently naming devices.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700549
550 sysfs is currently used by the block subsystem to mount the root
551 partition. If sysfs is disabled you must specify the boot device on
552 the kernel boot command line via its major and minor numbers. For
553 example, "root=03:01" for /dev/hda1.
554
555 Designers of embedded systems may wish to say N here to conserve space.
556
Linus Torvalds1da177e2005-04-16 15:20:36 -0700557config TMPFS
558 bool "Virtual memory file system support (former shm fs)"
559 help
560 Tmpfs is a file system which keeps all files in virtual memory.
561
562 Everything in tmpfs is temporary in the sense that no files will be
563 created on your hard drive. The files live in memory and swap
564 space. If you unmount a tmpfs instance, everything stored therein is
565 lost.
566
567 See <file:Documentation/filesystems/tmpfs.txt> for details.
568
Andreas Gruenbacher39f02472006-09-29 02:01:35 -0700569config TMPFS_POSIX_ACL
570 bool "Tmpfs POSIX Access Control Lists"
571 depends on TMPFS
572 select GENERIC_ACL
573 help
574 POSIX Access Control Lists (ACLs) support permissions for users and
575 groups beyond the owner/group/world scheme.
576
577 To learn more about Access Control Lists, visit the POSIX ACLs for
578 Linux website <http://acl.bestbits.at/>.
579
580 If you don't know what Access Control Lists are, say N.
581
Linus Torvalds1da177e2005-04-16 15:20:36 -0700582config HUGETLBFS
583 bool "HugeTLB file system support"
Gerald Schaefer53492b12008-04-30 13:38:46 +0200584 depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
585 (S390 && 64BIT) || BROKEN
Arthur Othienodda27d12006-04-18 22:20:57 -0700586 help
587 hugetlbfs is a filesystem backing for HugeTLB pages, based on
588 ramfs. For architectures that support it, say Y here and read
589 <file:Documentation/vm/hugetlbpage.txt> for details.
590
591 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700592
593config HUGETLB_PAGE
594 def_bool HUGETLBFS
595
Joel Becker7063fbf2005-12-15 14:29:43 -0800596config CONFIGFS_FS
Joel Becker02ac0492007-12-31 13:56:47 -0800597 tristate "Userspace-driven configuration filesystem"
598 depends on SYSFS
Joel Becker7063fbf2005-12-15 14:29:43 -0800599 help
600 configfs is a ram-based filesystem that provides the converse
601 of sysfs's functionality. Where sysfs is a filesystem-based
602 view of kernel objects, configfs is a filesystem-based manager
603 of kernel objects, or config_items.
604
605 Both sysfs and configfs can and should exist together on the
606 same system. One is not a replacement for the other.
607
Linus Torvalds1da177e2005-04-16 15:20:36 -0700608endmenu
609
Randy Dunlap67ec7d32009-01-06 14:40:57 -0800610menuconfig MISC_FILESYSTEMS
611 bool "Miscellaneous filesystems"
612 default y
613 ---help---
614 Say Y here to get to see options for various miscellaneous
615 filesystems, such as filesystems that came from other
616 operating systems.
617
618 This option alone does not add any kernel code.
619
620 If you say N, all options in this submenu will be skipped and
621 disabled; if unsure, say Y here.
622
623if MISC_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700624
625config ADFS_FS
626 tristate "ADFS file system support (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200627 depends on BLOCK && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700628 help
629 The Acorn Disc Filing System is the standard file system of the
630 RiscOS operating system which runs on Acorn's ARM-based Risc PC
631 systems and the Acorn Archimedes range of machines. If you say Y
632 here, Linux will be able to read from ADFS partitions on hard drives
633 and from ADFS-formatted floppy discs. If you also want to be able to
634 write to those devices, say Y to "ADFS write support" below.
635
636 The ADFS partition should be the first partition (i.e.,
637 /dev/[hs]d?1) on each of your drives. Please read the file
638 <file:Documentation/filesystems/adfs.txt> for further details.
639
640 To compile this code as a module, choose M here: the module will be
641 called adfs.
642
643 If unsure, say N.
644
645config ADFS_FS_RW
646 bool "ADFS write support (DANGEROUS)"
647 depends on ADFS_FS
648 help
649 If you say Y here, you will be able to write to ADFS partitions on
650 hard drives and ADFS-formatted floppy disks. This is experimental
651 codes, so if you're unsure, say N.
652
653config AFFS_FS
654 tristate "Amiga FFS file system support (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200655 depends on BLOCK && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700656 help
657 The Fast File System (FFS) is the common file system used on hard
658 disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20). Say Y
659 if you want to be able to read and write files from and to an Amiga
660 FFS partition on your hard drive. Amiga floppies however cannot be
661 read with this driver due to an incompatibility of the floppy
662 controller used in an Amiga and the standard floppy controller in
663 PCs and workstations. Read <file:Documentation/filesystems/affs.txt>
664 and <file:fs/affs/Changes>.
665
666 With this driver you can also mount disk files used by Bernd
667 Schmidt's Un*X Amiga Emulator
668 (<http://www.freiburg.linux.de/~uae/>).
669 If you want to do this, you will also need to say Y or M to "Loop
670 device support", above.
671
672 To compile this file system support as a module, choose M here: the
673 module will be called affs. If unsure, say N.
674
Michael Halcrow237fead2006-10-04 02:16:22 -0700675config ECRYPT_FS
676 tristate "eCrypt filesystem layer support (EXPERIMENTAL)"
Michael Halcrow88b4a072007-02-12 00:53:43 -0800677 depends on EXPERIMENTAL && KEYS && CRYPTO && NET
Michael Halcrow237fead2006-10-04 02:16:22 -0700678 help
679 Encrypted filesystem that operates on the VFS layer. See
Dirk Hohndele4031492007-10-30 13:37:19 -0700680 <file:Documentation/filesystems/ecryptfs.txt> to learn more about
Michael Halcrow237fead2006-10-04 02:16:22 -0700681 eCryptfs. Userspace components are required and can be
682 obtained from <http://ecryptfs.sf.net>.
683
684 To compile this file system support as a module, choose M here: the
685 module will be called ecryptfs.
686
Linus Torvalds1da177e2005-04-16 15:20:36 -0700687config HFS_FS
688 tristate "Apple Macintosh file system support (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200689 depends on BLOCK && EXPERIMENTAL
Lennert Buytenhek878129a2005-11-07 00:59:18 -0800690 select NLS
Linus Torvalds1da177e2005-04-16 15:20:36 -0700691 help
692 If you say Y here, you will be able to mount Macintosh-formatted
693 floppy disks and hard drive partitions with full read-write access.
Johann Felix Soden889c94a2008-01-20 14:41:18 +0100694 Please read <file:Documentation/filesystems/hfs.txt> to learn about
695 the available mount options.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700696
697 To compile this file system support as a module, choose M here: the
698 module will be called hfs.
699
700config HFSPLUS_FS
701 tristate "Apple Extended HFS file system support"
David Howells93614012006-09-30 20:45:40 +0200702 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700703 select NLS
704 select NLS_UTF8
705 help
706 If you say Y here, you will be able to mount extended format
707 Macintosh-formatted hard drive partitions with full read-write access.
708
709 This file system is often called HFS+ and was introduced with
710 MacOS 8. It includes all Mac specific filesystem data such as
711 data forks and creator codes, but it also has several UNIX
712 style features such as file ownership and permissions.
713
714config BEFS_FS
715 tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200716 depends on BLOCK && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700717 select NLS
718 help
719 The BeOS File System (BeFS) is the native file system of Be, Inc's
720 BeOS. Notable features include support for arbitrary attributes
Matt LaPlante3cb2fcc2006-11-30 05:22:59 +0100721 on files and directories, and database-like indices on selected
Linus Torvalds1da177e2005-04-16 15:20:36 -0700722 attributes. (Also note that this driver doesn't make those features
723 available at this time). It is a 64 bit filesystem, so it supports
Matt LaPlante44c09202006-10-03 22:34:14 +0200724 extremely large volumes and files.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700725
726 If you use this filesystem, you should also say Y to at least one
727 of the NLS (native language support) options below.
728
729 If you don't know what this is about, say N.
730
731 To compile this as a module, choose M here: the module will be
732 called befs.
733
734config BEFS_DEBUG
735 bool "Debug BeFS"
736 depends on BEFS_FS
737 help
738 If you say Y here, you can use the 'debug' mount option to enable
Andrew Mortonc7736332008-02-05 14:22:58 -0800739 debugging output from the driver.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700740
741config BFS_FS
742 tristate "BFS file system support (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200743 depends on BLOCK && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700744 help
745 Boot File System (BFS) is a file system used under SCO UnixWare to
746 allow the bootloader access to the kernel image and other important
747 files during the boot process. It is usually mounted under /stand
748 and corresponds to the slice marked as "STAND" in the UnixWare
749 partition. You should say Y if you want to read or write the files
750 on your /stand slice from within Linux. You then also need to say Y
751 to "UnixWare slices support", below. More information about the BFS
752 file system is contained in the file
753 <file:Documentation/filesystems/bfs.txt>.
754
755 If you don't know what this is about, say N.
756
757 To compile this as a module, choose M here: the module will be called
758 bfs. Note that the file system of your root partition (the one
759 containing the directory /) cannot be compiled as a module.
760
761
762
763config EFS_FS
764 tristate "EFS file system support (read only) (EXPERIMENTAL)"
David Howells93614012006-09-30 20:45:40 +0200765 depends on BLOCK && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -0700766 help
767 EFS is an older file system used for non-ISO9660 CD-ROMs and hard
768 disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
769 uses the XFS file system for hard disk partitions however).
770
771 This implementation only offers read-only access. If you don't know
772 what all this is about, it's safe to say N. For more information
773 about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
774
775 To compile the EFS file system support as a module, choose M here: the
776 module will be called efs.
777
Alexey Dobriyan31db6e92008-08-29 07:19:50 +0400778source "fs/jffs2/Kconfig"
Artem Bityutskiy0d7eff82008-07-14 19:08:38 +0300779# UBIFS File system configuration
780source "fs/ubifs/Kconfig"
781
Linus Torvalds1da177e2005-04-16 15:20:36 -0700782config CRAMFS
783 tristate "Compressed ROM file system support (cramfs)"
David Howells93614012006-09-30 20:45:40 +0200784 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700785 select ZLIB_INFLATE
786 help
787 Saying Y here includes support for CramFs (Compressed ROM File
788 System). CramFs is designed to be a simple, small, and compressed
789 file system for ROM based embedded systems. CramFs is read-only,
790 limited to 256MB file systems (with 16MB files), and doesn't support
791 16/32 bits uid/gid, hard links and timestamps.
792
793 See <file:Documentation/filesystems/cramfs.txt> and
794 <file:fs/cramfs/README> for further information.
795
796 To compile this as a module, choose M here: the module will be called
797 cramfs. Note that the root file system (the one containing the
798 directory /) cannot be compiled as a module.
799
800 If unsure, say N.
801
Phillip Lougher6ab5c1c2009-01-05 08:46:28 +0000802config SQUASHFS
803 tristate "SquashFS 4.0 - Squashed file system support"
804 depends on BLOCK
805 select ZLIB_INFLATE
806 help
807 Saying Y here includes support for SquashFS 4.0 (a Compressed
808 Read-Only File System). Squashfs is a highly compressed read-only
809 filesystem for Linux. It uses zlib compression to compress both
810 files, inodes and directories. Inodes in the system are very small
811 and all blocks are packed to minimise data overhead. Block sizes
812 greater than 4K are supported up to a maximum of 1 Mbytes (default
813 block size 128K). SquashFS 4.0 supports 64 bit filesystems and files
814 (larger than 4GB), full uid/gid information, hard links and
815 timestamps.
816
817 Squashfs is intended for general read-only filesystem use, for
818 archival use (i.e. in cases where a .tar.gz file may be used), and in
819 embedded systems where low overhead is needed. Further information
820 and tools are available from http://squashfs.sourceforge.net.
821
822 If you want to compile this as a module ( = code which can be
823 inserted in and removed from the running kernel whenever you want),
824 say M here and read <file:Documentation/modules.txt>. The module
825 will be called squashfs. Note that the root file system (the one
826 containing the directory /) cannot be compiled as a module.
827
828 If unsure, say N.
829
830config SQUASHFS_EMBEDDED
831
832 bool "Additional option for memory-constrained systems"
833 depends on SQUASHFS
834 default n
835 help
836 Saying Y here allows you to specify cache size.
837
838 If unsure, say N.
839
840config SQUASHFS_FRAGMENT_CACHE_SIZE
841 int "Number of fragments cached" if SQUASHFS_EMBEDDED
842 depends on SQUASHFS
843 default "3"
844 help
845 By default SquashFS caches the last 3 fragments read from
846 the filesystem. Increasing this amount may mean SquashFS
847 has to re-read fragments less often from disk, at the expense
848 of extra system memory. Decreasing this amount will mean
849 SquashFS uses less memory at the expense of extra reads from disk.
850
851 Note there must be at least one cached fragment. Anything
852 much more than three will probably not make much difference.
853
Linus Torvalds1da177e2005-04-16 15:20:36 -0700854config VXFS_FS
855 tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
David Howells93614012006-09-30 20:45:40 +0200856 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700857 help
858 FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
859 file system format. VERITAS VxFS(TM) is the standard file system
860 of SCO UnixWare (and possibly others) and optionally available
861 for Sunsoft Solaris, HP-UX and many other operating systems.
862 Currently only readonly access is supported.
863
864 NOTE: the file system type as used by mount(1), mount(2) and
865 fstab(5) is 'vxfs' as it describes the file system format, not
866 the actual driver.
867
868 To compile this as a module, choose M here: the module will be
869 called freevxfs. If unsure, say N.
870
Randy Dunlap25fad942008-02-07 00:15:16 -0800871config MINIX_FS
872 tristate "Minix file system support"
873 depends on BLOCK
874 help
875 Minix is a simple operating system used in many classes about OS's.
876 The minix file system (method to organize files on a hard disk
877 partition or a floppy disk) was the original file system for Linux,
878 but has been superseded by the second extended file system ext2fs.
879 You don't want to use the minix file system on your hard disk
880 because of certain built-in restrictions, but it is sometimes found
881 on older Linux floppy disks. This option will enlarge your kernel
882 by about 28 KB. If unsure, say N.
883
884 To compile this file system support as a module, choose M here: the
885 module will be called minix. Note that the file system of your root
886 partition (the one containing the directory /) cannot be compiled as
887 a module.
888
Bob Copeland63ca8ce2008-07-25 19:45:17 -0700889config OMFS_FS
890 tristate "SonicBlue Optimized MPEG File System support"
891 depends on BLOCK
892 select CRC_ITU_T
893 help
894 This is the proprietary file system used by the Rio Karma music
895 player and ReplayTV DVR. Despite the name, this filesystem is not
896 more efficient than a standard FS for MPEG files, in fact likely
897 the opposite is true. Say Y if you have either of these devices
898 and wish to mount its disk.
899
900 To compile this file system support as a module, choose M here: the
901 module will be called omfs. If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700902
903config HPFS_FS
904 tristate "OS/2 HPFS file system support"
David Howells93614012006-09-30 20:45:40 +0200905 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700906 help
907 OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
908 is the file system used for organizing files on OS/2 hard disk
909 partitions. Say Y if you want to be able to read files from and
910 write files to an OS/2 HPFS partition on your hard drive. OS/2
911 floppies however are in regular MSDOS format, so you don't need this
912 option in order to be able to read them. Read
913 <file:Documentation/filesystems/hpfs.txt>.
914
915 To compile this file system support as a module, choose M here: the
916 module will be called hpfs. If unsure, say N.
917
918
Linus Torvalds1da177e2005-04-16 15:20:36 -0700919config QNX4FS_FS
920 tristate "QNX4 file system support (read only)"
David Howells93614012006-09-30 20:45:40 +0200921 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700922 help
923 This is the file system used by the real-time operating systems
924 QNX 4 and QNX 6 (the latter is also called QNX RTP).
925 Further information is available at <http://www.qnx.com/>.
926 Say Y if you intend to mount QNX hard disks or floppies.
927 Unless you say Y to "QNX4FS read-write support" below, you will
928 only be able to read these file systems.
929
930 To compile this file system support as a module, choose M here: the
931 module will be called qnx4.
932
933 If you don't know whether you need it, then you don't need it:
934 answer N.
935
936config QNX4FS_RW
937 bool "QNX4FS write support (DANGEROUS)"
938 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
939 help
940 Say Y if you want to test write support for QNX4 file systems.
941
942 It's currently broken, so for now:
943 answer N.
944
Randy Dunlap25fad942008-02-07 00:15:16 -0800945config ROMFS_FS
946 tristate "ROM file system support"
947 depends on BLOCK
948 ---help---
949 This is a very small read-only file system mainly intended for
950 initial ram disks of installation disks, but it could be used for
951 other read-only media as well. Read
952 <file:Documentation/filesystems/romfs.txt> for details.
953
954 To compile this file system support as a module, choose M here: the
955 module will be called romfs. Note that the file system of your
956 root partition (the one containing the directory /) cannot be a
957 module.
958
959 If you don't know whether you need it, then you don't need it:
960 answer N.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700961
962
963config SYSV_FS
964 tristate "System V/Xenix/V7/Coherent file system support"
David Howells93614012006-09-30 20:45:40 +0200965 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -0700966 help
967 SCO, Xenix and Coherent are commercial Unix systems for Intel
968 machines, and Version 7 was used on the DEC PDP-11. Saying Y
969 here would allow you to read from their floppies and hard disk
970 partitions.
971
972 If you have floppies or hard disk partitions like that, it is likely
973 that they contain binaries from those other Unix systems; in order
Matt LaPlantecab00892006-10-03 22:36:44 +0200974 to run these binaries, you will want to install linux-abi which is
Linus Torvalds1da177e2005-04-16 15:20:36 -0700975 a set of kernel modules that lets you run SCO, Xenix, Wyse,
976 UnixWare, Dell Unix and System V programs under Linux. It is
977 available via FTP (user: ftp) from
978 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
979 NOTE: that will work only for binaries from Intel-based systems;
980 PDP ones will have to wait until somebody ports Linux to -11 ;-)
981
982 If you only intend to mount files from some other Unix over the
983 network using NFS, you don't need the System V file system support
984 (but you need NFS file system support obviously).
985
986 Note that this option is generally not needed for floppies, since a
987 good portable way to transport files and directories between unixes
988 (and even other operating systems) is given by the tar program ("man
989 tar" or preferably "info tar"). Note also that this option has
990 nothing whatsoever to do with the option "System V IPC". Read about
991 the System V file system in
992 <file:Documentation/filesystems/sysv-fs.txt>.
993 Saying Y here will enlarge your kernel by about 27 KB.
994
995 To compile this as a module, choose M here: the module will be called
996 sysv.
997
998 If you haven't heard about all of this before, it's safe to say N.
999
1000
Linus Torvalds1da177e2005-04-16 15:20:36 -07001001config UFS_FS
1002 tristate "UFS file system support (read only)"
David Howells93614012006-09-30 20:45:40 +02001003 depends on BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -07001004 help
1005 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
1006 OpenBSD and NeXTstep) use a file system called UFS. Some System V
1007 Unixes can create and mount hard disk partitions and diskettes using
1008 this file system as well. Saying Y here will allow you to read from
1009 these partitions; if you also want to write to them, say Y to the
1010 experimental "UFS file system write support", below. Please read the
1011 file <file:Documentation/filesystems/ufs.txt> for more information.
1012
1013 The recently released UFS2 variant (used in FreeBSD 5.x) is
1014 READ-ONLY supported.
1015
Linus Torvalds1da177e2005-04-16 15:20:36 -07001016 Note that this option is generally not needed for floppies, since a
1017 good portable way to transport files and directories between unixes
1018 (and even other operating systems) is given by the tar program ("man
1019 tar" or preferably "info tar").
1020
1021 When accessing NeXTstep files, you may need to convert them from the
1022 NeXT character set to the Latin1 character set; use the program
1023 recode ("info recode") for this purpose.
1024
1025 To compile the UFS file system support as a module, choose M here: the
1026 module will be called ufs.
1027
1028 If you haven't heard about all of this before, it's safe to say N.
1029
1030config UFS_FS_WRITE
1031 bool "UFS file system write support (DANGEROUS)"
Evgeniy Dushistov5afb3142006-06-25 05:47:24 -07001032 depends on UFS_FS && EXPERIMENTAL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001033 help
1034 Say Y here if you want to try writing to UFS partitions. This is
1035 experimental, so you should back up your UFS partitions beforehand.
1036
Evgeniy Dushistovabf5d152006-06-25 05:47:24 -07001037config UFS_DEBUG
1038 bool "UFS debugging"
1039 depends on UFS_FS
1040 help
1041 If you are experiencing any problems with the UFS filesystem, say
1042 Y here. This will result in _many_ additional debugging messages to be
1043 written to the system log.
1044
Randy Dunlap67ec7d32009-01-06 14:40:57 -08001045endif # MISC_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001046
Jan Engelhardtea0985a2007-10-16 23:30:16 -07001047menuconfig NETWORK_FILESYSTEMS
1048 bool "Network File Systems"
1049 default y
Linus Torvalds1da177e2005-04-16 15:20:36 -07001050 depends on NET
Jan Engelhardtea0985a2007-10-16 23:30:16 -07001051 ---help---
1052 Say Y here to get to see options for network filesystems and
1053 filesystem-related networking code, such as NFS daemon and
1054 RPCSEC security modules.
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001055
Jan Engelhardtea0985a2007-10-16 23:30:16 -07001056 This option alone does not add any kernel code.
1057
1058 If you say N, all options in this submenu will be skipped and
1059 disabled; if unsure, say Y here.
1060
1061if NETWORK_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001062
1063config NFS_FS
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001064 tristate "NFS client support"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001065 depends on INET
1066 select LOCKD
1067 select SUNRPC
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +00001068 select NFS_ACL_SUPPORT if NFS_V3_ACL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001069 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001070 Choose Y here if you want to access files residing on other
1071 computers using Sun's Network File System protocol. To compile
1072 this file system support as a module, choose M here: the module
1073 will be called nfs.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001074
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001075 To mount file systems exported by NFS servers, you also need to
1076 install the user space mount.nfs command which can be found in
1077 the Linux nfs-utils package, available from http://linux-nfs.org/.
1078 Information about using the mount command is available in the
1079 mount(8) man page. More detail about the Linux NFS client
1080 implementation is available via the nfs(5) man page.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001081
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001082 Below you can choose which versions of the NFS protocol are
1083 available in the kernel to mount NFS servers. Support for NFS
1084 version 2 (RFC 1094) is always available when NFS_FS is selected.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001085
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001086 To configure a system which mounts its root file system via NFS
1087 at boot time, say Y here, select "Kernel level IP
1088 autoconfiguration" in the NETWORK menu, and select "Root file
1089 system on NFS" below. You cannot compile this file system as a
1090 module in this case.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001091
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001092 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001093
1094config NFS_V3
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001095 bool "NFS client support for NFS version 3"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001096 depends on NFS_FS
1097 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001098 This option enables support for version 3 of the NFS protocol
1099 (RFC 1813) in the kernel's NFS client.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001100
1101 If unsure, say Y.
1102
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +00001103config NFS_V3_ACL
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001104 bool "NFS client support for the NFSv3 ACL protocol extension"
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +00001105 depends on NFS_V3
1106 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001107 Some NFS servers support an auxiliary NFSv3 ACL protocol that
1108 Sun added to Solaris but never became an official part of the
1109 NFS version 3 protocol. This protocol extension allows
1110 applications on NFS clients to manipulate POSIX Access Control
1111 Lists on files residing on NFS servers. NFS servers enforce
1112 ACLs on local files whether this protocol is available or not.
1113
1114 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
1115 protocol extension and you want your NFS client to allow
1116 applications to access and modify ACLs on files on the server.
1117
1118 Most NFS servers don't support the Solaris NFSv3 ACL protocol
1119 extension. You can choose N here or specify the "noacl" mount
1120 option to prevent your NFS client from trying to use the NFSv3
1121 ACL protocol.
Andreas Gruenbacherb7fa0552005-06-22 17:16:27 +00001122
1123 If unsure, say N.
1124
Linus Torvalds1da177e2005-04-16 15:20:36 -07001125config NFS_V4
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001126 bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001127 depends on NFS_FS && EXPERIMENTAL
1128 select RPCSEC_GSS_KRB5
1129 help
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001130 This option enables support for version 4 of the NFS protocol
1131 (RFC 3530) in the kernel's NFS client.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001132
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001133 To mount NFS servers using NFSv4, you also need to install user
1134 space programs which can be found in the Linux nfs-utils package,
1135 available from http://linux-nfs.org/.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001136
1137 If unsure, say N.
1138
Chuck Lever6fb1bc12008-05-21 17:09:04 -04001139config ROOT_NFS
1140 bool "Root file system on NFS"
1141 depends on NFS_FS=y && IP_PNP
1142 help
1143 If you want your system to mount its root file system via NFS,
1144 choose Y here. This is common practice for managing systems
1145 without local permanent storage. For details, read
1146 <file:Documentation/filesystems/nfsroot.txt>.
1147
1148 Most people say N here.
1149
Linus Torvalds1da177e2005-04-16 15:20:36 -07001150config NFSD
1151 tristate "NFS server support"
1152 depends on INET
1153 select LOCKD
1154 select SUNRPC
1155 select EXPORTFS
Herbert Xuf05e15b2006-06-26 00:25:39 -07001156 select NFS_ACL_SUPPORT if NFSD_V2_ACL
Linus Torvalds1da177e2005-04-16 15:20:36 -07001157 help
Chuck Leverd24455b2008-02-11 17:11:54 -05001158 Choose Y here if you want to allow other computers to access
1159 files residing on this system using Sun's Network File System
1160 protocol. To compile the NFS server support as a module,
1161 choose M here: the module will be called nfsd.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001162
Chuck Leverd24455b2008-02-11 17:11:54 -05001163 You may choose to use a user-space NFS server instead, in which
1164 case you can choose N here.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001165
Chuck Leverd24455b2008-02-11 17:11:54 -05001166 To export local file systems using NFS, you also need to install
1167 user space programs which can be found in the Linux nfs-utils
1168 package, available from http://linux-nfs.org/. More detail about
1169 the Linux NFS server implementation is available via the
1170 exports(5) man page.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001171
Chuck Leverd24455b2008-02-11 17:11:54 -05001172 Below you can choose which versions of the NFS protocol are
1173 available to clients mounting the NFS server on this system.
1174 Support for NFS version 2 (RFC 1094) is always available when
1175 CONFIG_NFSD is selected.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001176
Chuck Leverd24455b2008-02-11 17:11:54 -05001177 If unsure, say N.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001178
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +00001179config NFSD_V2_ACL
1180 bool
1181 depends on NFSD
1182
Linus Torvalds1da177e2005-04-16 15:20:36 -07001183config NFSD_V3
Chuck Leverd24455b2008-02-11 17:11:54 -05001184 bool "NFS server support for NFS version 3"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001185 depends on NFSD
1186 help
Chuck Leverd24455b2008-02-11 17:11:54 -05001187 This option enables support in your system's NFS server for
1188 version 3 of the NFS protocol (RFC 1813).
1189
1190 If unsure, say Y.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001191
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +00001192config NFSD_V3_ACL
Chuck Leverd24455b2008-02-11 17:11:54 -05001193 bool "NFS server support for the NFSv3 ACL protocol extension"
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +00001194 depends on NFSD_V3
Chuck Lever78dd0992008-02-11 17:12:31 -05001195 select NFSD_V2_ACL
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +00001196 help
Chuck Leverd24455b2008-02-11 17:11:54 -05001197 Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
1198 never became an official part of the NFS version 3 protocol.
1199 This protocol extension allows applications on NFS clients to
1200 manipulate POSIX Access Control Lists on files residing on NFS
1201 servers. NFS servers enforce POSIX ACLs on local files whether
1202 this protocol is available or not.
1203
1204 This option enables support in your system's NFS server for the
1205 NFSv3 ACL protocol extension allowing NFS clients to manipulate
1206 POSIX ACLs on files exported by your system's NFS server. NFS
1207 clients which support the Solaris NFSv3 ACL protocol can then
1208 access and modify ACLs on your NFS server.
1209
1210 To store ACLs on your NFS server, you also need to enable ACL-
1211 related CONFIG options for your local file systems of choice.
1212
1213 If unsure, say N.
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +00001214
Linus Torvalds1da177e2005-04-16 15:20:36 -07001215config NFSD_V4
Chuck Leverd24455b2008-02-11 17:11:54 -05001216 bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
Chuck Lever1a448fd2008-03-27 16:34:54 -04001217 depends on NFSD && PROC_FS && EXPERIMENTAL
1218 select NFSD_V3
Chuck Lever89206952008-02-11 17:12:24 -05001219 select FS_POSIX_ACL
J. Bruce Fields42ed95c2007-07-17 04:04:41 -07001220 select RPCSEC_GSS_KRB5
Linus Torvalds1da177e2005-04-16 15:20:36 -07001221 help
Chuck Leverd24455b2008-02-11 17:11:54 -05001222 This option enables support in your system's NFS server for
1223 version 4 of the NFS protocol (RFC 3530).
1224
1225 To export files using NFSv4, you need to install additional user
1226 space programs which can be found in the Linux nfs-utils package,
1227 available from http://linux-nfs.org/.
1228
Linus Torvalds1da177e2005-04-16 15:20:36 -07001229 If unsure, say N.
1230
Linus Torvalds1da177e2005-04-16 15:20:36 -07001231config LOCKD
1232 tristate
1233
1234config LOCKD_V4
1235 bool
1236 depends on NFSD_V3 || NFS_V3
1237 default y
1238
1239config EXPORTFS
1240 tristate
1241
Andreas Gruenbachera257cdd2005-06-22 17:16:26 +00001242config NFS_ACL_SUPPORT
1243 tristate
1244 select FS_POSIX_ACL
1245
1246config NFS_COMMON
1247 bool
1248 depends on NFSD || NFS_FS
1249 default y
1250
Linus Torvalds1da177e2005-04-16 15:20:36 -07001251config SUNRPC
1252 tristate
1253
1254config SUNRPC_GSS
1255 tristate
1256
\"Talpey, Thomas\c3a57ed2007-09-10 13:49:15 -04001257config SUNRPC_XPRT_RDMA
James Lentini3211e4e2008-01-28 12:09:28 -05001258 tristate
\"Talpey, Thomas\113632d2007-09-20 17:37:58 -04001259 depends on SUNRPC && INFINIBAND && EXPERIMENTAL
James Lentini3211e4e2008-01-28 12:09:28 -05001260 default SUNRPC && INFINIBAND
Chuck Lever327a2992008-03-14 14:15:11 -04001261 help
1262 This option enables an RPC client transport capability that
1263 allows the NFS client to mount servers via an RDMA-enabled
1264 transport.
1265
1266 To compile RPC client RDMA transport support as a module,
1267 choose M here: the module will be called xprtrdma.
1268
1269 If unsure, say N.
\"Talpey, Thomas\c3a57ed2007-09-10 13:49:15 -04001270
Chuck Levera26cfad2008-08-18 19:34:16 -04001271config SUNRPC_REGISTER_V4
1272 bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
1273 depends on SUNRPC && EXPERIMENTAL
1274 default n
1275 help
1276 Sun added support for registering RPC services at an IPv6
1277 address by creating two new versions of the rpcbind protocol
1278 (RFC 1833).
1279
1280 This option enables support in the kernel RPC server for
1281 registering kernel RPC services via version 4 of the rpcbind
1282 protocol. If you enable this option, you must run a portmapper
1283 daemon that supports rpcbind protocol version 4.
1284
1285 Serving NFS over IPv6 from knfsd (the kernel's NFS server)
1286 requires that you enable this option and use a portmapper that
1287 supports rpcbind version 4.
1288
1289 If unsure, say N to get traditional behavior (register kernel
1290 RPC services using only rpcbind version 2). Distributions
1291 using the legacy Linux portmapper daemon must say N here.
1292
Linus Torvalds1da177e2005-04-16 15:20:36 -07001293config RPCSEC_GSS_KRB5
1294 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
1295 depends on SUNRPC && EXPERIMENTAL
1296 select SUNRPC_GSS
1297 select CRYPTO
1298 select CRYPTO_MD5
1299 select CRYPTO_DES
Patrick McHardybcbaecb2006-10-25 16:49:36 +10001300 select CRYPTO_CBC
Linus Torvalds1da177e2005-04-16 15:20:36 -07001301 help
Chuck Lever327a2992008-03-14 14:15:11 -04001302 Choose Y here to enable Secure RPC using the Kerberos version 5
1303 GSS-API mechanism (RFC 1964).
Linus Torvalds1da177e2005-04-16 15:20:36 -07001304
Chuck Lever327a2992008-03-14 14:15:11 -04001305 Secure RPC calls with Kerberos require an auxiliary user-space
1306 daemon which may be found in the Linux nfs-utils package
1307 available from http://linux-nfs.org/. In addition, user-space
1308 Kerberos support should be installed.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001309
1310 If unsure, say N.
1311
1312config RPCSEC_GSS_SPKM3
1313 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
1314 depends on SUNRPC && EXPERIMENTAL
1315 select SUNRPC_GSS
1316 select CRYPTO
1317 select CRYPTO_MD5
1318 select CRYPTO_DES
J. Bruce Fieldsdf6db302006-03-20 23:25:10 -05001319 select CRYPTO_CAST5
Patrick McHardybcbaecb2006-10-25 16:49:36 +10001320 select CRYPTO_CBC
Linus Torvalds1da177e2005-04-16 15:20:36 -07001321 help
Chuck Lever327a2992008-03-14 14:15:11 -04001322 Choose Y here to enable Secure RPC using the SPKM3 public key
1323 GSS-API mechansim (RFC 2025).
Linus Torvalds1da177e2005-04-16 15:20:36 -07001324
Chuck Lever327a2992008-03-14 14:15:11 -04001325 Secure RPC calls with SPKM3 require an auxiliary userspace
1326 daemon which may be found in the Linux nfs-utils package
1327 available from http://linux-nfs.org/.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001328
1329 If unsure, say N.
1330
1331config SMB_FS
Andrew Mortonc7736332008-02-05 14:22:58 -08001332 tristate "SMB file system support (OBSOLETE, please use CIFS)"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001333 depends on INET
1334 select NLS
1335 help
1336 SMB (Server Message Block) is the protocol Windows for Workgroups
1337 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
1338 files and printers over local networks. Saying Y here allows you to
1339 mount their file systems (often called "shares" in this context) and
1340 access them just like any other Unix directory. Currently, this
1341 works only if the Windows machines use TCP/IP as the underlying
1342 transport protocol, and not NetBEUI. For details, read
1343 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
1344 available from <http://www.tldp.org/docs.html#howto>.
1345
1346 Note: if you just want your box to act as an SMB *server* and make
1347 files and printing services available to Windows clients (which need
1348 to have a TCP/IP stack), you don't need to say Y here; you can use
1349 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
1350 for that.
1351
1352 General information about how to connect Linux, Windows machines and
1353 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1354
Andrew Mortonc7736332008-02-05 14:22:58 -08001355 To compile the SMB support as a module, choose M here:
1356 the module will be called smbfs. Most people say N, however.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001357
1358config SMB_NLS_DEFAULT
1359 bool "Use a default NLS"
1360 depends on SMB_FS
1361 help
1362 Enabling this will make smbfs use nls translations by default. You
1363 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
1364 settings and you need to give the default nls for the SMB server as
1365 CONFIG_SMB_NLS_REMOTE.
1366
1367 The nls settings can be changed at mount time, if your smbmount
1368 supports that, using the codepage and iocharset parameters.
1369
1370 smbmount from samba 2.2.0 or later supports this.
1371
1372config SMB_NLS_REMOTE
1373 string "Default Remote NLS Option"
1374 depends on SMB_NLS_DEFAULT
1375 default "cp437"
1376 help
1377 This setting allows you to specify a default value for which
1378 codepage the server uses. If this field is left blank no
1379 translations will be done by default. The local codepage/charset
1380 default to CONFIG_NLS_DEFAULT.
1381
1382 The nls settings can be changed at mount time, if your smbmount
1383 supports that, using the codepage and iocharset parameters.
1384
1385 smbmount from samba 2.2.0 or later supports this.
1386
Alexey Dobriyanbb26b962008-10-18 20:28:49 -07001387source "fs/cifs/Kconfig"
Steve French61033352008-01-09 16:21:36 +00001388
Linus Torvalds1da177e2005-04-16 15:20:36 -07001389config NCP_FS
1390 tristate "NCP file system support (to mount NetWare volumes)"
1391 depends on IPX!=n || INET
1392 help
1393 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
1394 used by Novell NetWare clients to talk to file servers. It is to
1395 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
1396 to mount NetWare file server volumes and to access them just like
1397 any other Unix directory. For details, please read the file
1398 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
1399 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
1400
1401 You do not have to say Y here if you want your Linux box to act as a
1402 file *server* for Novell NetWare clients.
1403
1404 General information about how to connect Linux, Windows machines and
1405 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1406
1407 To compile this as a module, choose M here: the module will be called
1408 ncpfs. Say N unless you are connected to a Novell network.
1409
1410source "fs/ncpfs/Kconfig"
1411
1412config CODA_FS
1413 tristate "Coda file system support (advanced network fs)"
1414 depends on INET
1415 help
1416 Coda is an advanced network file system, similar to NFS in that it
1417 enables you to mount file systems of a remote server and access them
1418 with regular Unix commands as if they were sitting on your hard
1419 disk. Coda has several advantages over NFS: support for
1420 disconnected operation (e.g. for laptops), read/write server
1421 replication, security model for authentication and encryption,
1422 persistent client caches and write back caching.
1423
1424 If you say Y here, your Linux box will be able to act as a Coda
1425 *client*. You will need user level code as well, both for the
1426 client and server. Servers are currently user level, i.e. they need
1427 no kernel support. Please read
1428 <file:Documentation/filesystems/coda.txt> and check out the Coda
1429 home page <http://www.coda.cs.cmu.edu/>.
1430
1431 To compile the coda client support as a module, choose M here: the
1432 module will be called coda.
1433
Linus Torvalds1da177e2005-04-16 15:20:36 -07001434config AFS_FS
David Howells64aaa4f2006-11-16 01:19:27 -08001435 tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001436 depends on INET && EXPERIMENTAL
David Howells08e0e7c2007-04-26 15:55:03 -07001437 select AF_RXRPC
Linus Torvalds1da177e2005-04-16 15:20:36 -07001438 help
1439 If you say Y here, you will get an experimental Andrew File System
1440 driver. It currently only supports unsecured read-only AFS access.
1441
Matt LaPlantecc2e2762006-10-03 22:22:29 +02001442 See <file:Documentation/filesystems/afs.txt> for more information.
Linus Torvalds1da177e2005-04-16 15:20:36 -07001443
1444 If unsure, say N.
1445
David Howells08e0e7c2007-04-26 15:55:03 -07001446config AFS_DEBUG
1447 bool "AFS dynamic debugging"
1448 depends on AFS_FS
1449 help
1450 Say Y here to make runtime controllable debugging messages appear.
1451
1452 See <file:Documentation/filesystems/afs.txt> for more information.
1453
1454 If unsure, say N.
1455
Eric Van Hensbergen93fa58c2005-09-09 13:04:18 -07001456config 9P_FS
1457 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
Latchesar Ionkovbd238fb2007-07-10 17:57:28 -05001458 depends on INET && NET_9P && EXPERIMENTAL
Eric Van Hensbergen93fa58c2005-09-09 13:04:18 -07001459 help
1460 If you say Y here, you will get experimental support for
1461 Plan 9 resource sharing via the 9P2000 protocol.
1462
1463 See <http://v9fs.sf.net> for more information.
1464
1465 If unsure, say N.
1466
Jan Engelhardtea0985a2007-10-16 23:30:16 -07001467endif # NETWORK_FILESYSTEMS
Linus Torvalds1da177e2005-04-16 15:20:36 -07001468
David Howells93614012006-09-30 20:45:40 +02001469if BLOCK
Linus Torvalds1da177e2005-04-16 15:20:36 -07001470menu "Partition Types"
1471
1472source "fs/partitions/Kconfig"
1473
1474endmenu
David Howells93614012006-09-30 20:45:40 +02001475endif
Linus Torvalds1da177e2005-04-16 15:20:36 -07001476
1477source "fs/nls/Kconfig"
David Teiglande7fd4172006-01-18 09:30:29 +00001478source "fs/dlm/Kconfig"
Linus Torvalds1da177e2005-04-16 15:20:36 -07001479
1480endmenu