]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - fs/Kconfig
Linux v2.6.15
[mirror_ubuntu-artful-kernel.git] / fs / Kconfig
CommitLineData
1da177e4
LT
1#
2# File system configuration
3#
4
5menu "File systems"
6
7config EXT2_FS
8 tristate "Second extended fs support"
9 help
10 Ext2 is a standard Linux file system for hard disks.
11
12 To compile this file system support as a module, choose M here: the
13 module will be called ext2. Be aware however that the file system
14 of your root partition (the one containing the directory /) cannot
15 be compiled as a module, and so this could be dangerous.
16
17 If unsure, say Y.
18
19config EXT2_FS_XATTR
20 bool "Ext2 extended attributes"
21 depends on EXT2_FS
22 help
23 Extended attributes are name:value pairs associated with inodes by
24 the kernel or by users (see the attr(5) manual page, or visit
25 <http://acl.bestbits.at/> for details).
26
27 If unsure, say N.
28
29config EXT2_FS_POSIX_ACL
30 bool "Ext2 POSIX Access Control Lists"
31 depends on EXT2_FS_XATTR
b84c2157 32 select FS_POSIX_ACL
1da177e4
LT
33 help
34 Posix Access Control Lists (ACLs) support permissions for users and
35 groups beyond the owner/group/world scheme.
36
37 To learn more about Access Control Lists, visit the Posix ACLs for
38 Linux website <http://acl.bestbits.at/>.
39
40 If you don't know what Access Control Lists are, say N
41
42config EXT2_FS_SECURITY
43 bool "Ext2 Security Labels"
44 depends on EXT2_FS_XATTR
45 help
46 Security labels support alternative access control models
47 implemented by security modules like SELinux. This option
48 enables an extended attribute handler for file security
49 labels in the ext2 filesystem.
50
51 If you are not using a security module that requires using
52 extended attributes for file security labels, say N.
53
6d79125b
CO
54config EXT2_FS_XIP
55 bool "Ext2 execute in place support"
56 depends on EXT2_FS
57 help
58 Execute in place can be used on memory-backed block devices. If you
59 enable this option, you can select to mount block devices which are
60 capable of this feature without using the page cache.
61
62 If you do not use a block device that is capable of using this,
63 or if unsure, say N.
64
65config FS_XIP
66# execute in place
67 bool
68 depends on EXT2_FS_XIP
69 default y
70
1da177e4
LT
71config EXT3_FS
72 tristate "Ext3 journalling file system support"
73 help
74 This is the journaling version of the Second extended file system
75 (often called ext3), the de facto standard Linux file system
76 (method to organize files on a storage device) for hard disks.
77
78 The journaling code included in this driver means you do not have
79 to run e2fsck (file system checker) on your file systems after a
80 crash. The journal keeps track of any changes that were being made
81 at the time the system crashed, and can ensure that your file system
82 is consistent without the need for a lengthy check.
83
84 Other than adding the journal to the file system, the on-disk format
85 of ext3 is identical to ext2. It is possible to freely switch
86 between using the ext3 driver and the ext2 driver, as long as the
87 file system has been cleanly unmounted, or e2fsck is run on the file
88 system.
89
90 To add a journal on an existing ext2 file system or change the
91 behavior of ext3 file systems, you can use the tune2fs utility ("man
92 tune2fs"). To modify attributes of files and directories on ext3
93 file systems, use chattr ("man chattr"). You need to be using
94 e2fsprogs version 1.20 or later in order to create ext3 journals
95 (available at <http://sourceforge.net/projects/e2fsprogs/>).
96
97 To compile this file system support as a module, choose M here: the
98 module will be called ext3. Be aware however that the file system
99 of your root partition (the one containing the directory /) cannot
100 be compiled as a module, and so this may be dangerous.
101
102config EXT3_FS_XATTR
103 bool "Ext3 extended attributes"
104 depends on EXT3_FS
105 default y
106 help
107 Extended attributes are name:value pairs associated with inodes by
108 the kernel or by users (see the attr(5) manual page, or visit
109 <http://acl.bestbits.at/> for details).
110
111 If unsure, say N.
112
113 You need this for POSIX ACL support on ext3.
114
115config EXT3_FS_POSIX_ACL
116 bool "Ext3 POSIX Access Control Lists"
117 depends on EXT3_FS_XATTR
b84c2157 118 select FS_POSIX_ACL
1da177e4
LT
119 help
120 Posix Access Control Lists (ACLs) support permissions for users and
121 groups beyond the owner/group/world scheme.
122
123 To learn more about Access Control Lists, visit the Posix ACLs for
124 Linux website <http://acl.bestbits.at/>.
125
126 If you don't know what Access Control Lists are, say N
127
128config EXT3_FS_SECURITY
129 bool "Ext3 Security Labels"
130 depends on EXT3_FS_XATTR
131 help
132 Security labels support alternative access control models
133 implemented by security modules like SELinux. This option
134 enables an extended attribute handler for file security
135 labels in the ext3 filesystem.
136
137 If you are not using a security module that requires using
138 extended attributes for file security labels, say N.
139
140config JBD
141# CONFIG_JBD could be its own option (even modular), but until there are
142# other users than ext3, we will simply make it be the same as CONFIG_EXT3_FS
143# dep_tristate ' Journal Block Device support (JBD for ext3)' CONFIG_JBD $CONFIG_EXT3_FS
144 tristate
145 default EXT3_FS
146 help
147 This is a generic journaling layer for block devices. It is
148 currently used by the ext3 file system, but it could also be used to
149 add journal support to other file systems or block devices such as
150 RAID or LVM.
151
152 If you are using the ext3 file system, you need to say Y here. If
153 you are not using ext3 then you will probably want to say N.
154
155 To compile this device as a module, choose M here: the module will be
156 called jbd. If you are compiling ext3 into the kernel, you cannot
157 compile this code as a module.
158
159config JBD_DEBUG
160 bool "JBD (ext3) debugging support"
161 depends on JBD
162 help
163 If you are using the ext3 journaled file system (or potentially any
164 other file system/device using JBD), this option allows you to
165 enable debugging output while the system is running, in order to
166 help track down any problems you are having. By default the
167 debugging output will be turned off.
168
169 If you select Y here, then you will be able to turn on debugging
170 with "echo N > /proc/sys/fs/jbd-debug", where N is a number between
171 1 and 5, the higher the number, the more debugging output is
172 generated. To turn debugging off again, do
173 "echo 0 > /proc/sys/fs/jbd-debug".
174
175config FS_MBCACHE
176# Meta block cache for Extended Attributes (ext2/ext3)
177 tristate
178 depends on EXT2_FS_XATTR || EXT3_FS_XATTR
179 default y if EXT2_FS=y || EXT3_FS=y
180 default m if EXT2_FS=m || EXT3_FS=m
181
182config REISERFS_FS
183 tristate "Reiserfs support"
184 help
185 Stores not just filenames but the files themselves in a balanced
186 tree. Uses journaling.
187
188 Balanced trees are more efficient than traditional file system
189 architectural foundations.
190
191 In general, ReiserFS is as fast as ext2, but is very efficient with
192 large directories and small files. Additional patches are needed
193 for NFS and quotas, please see <http://www.namesys.com/> for links.
194
195 It is more easily extended to have features currently found in
196 database and keyword search systems than block allocation based file
197 systems are. The next version will be so extended, and will support
198 plugins consistent with our motto ``It takes more than a license to
199 make source code open.''
200
201 Read <http://www.namesys.com/> to learn more about reiserfs.
202
203 Sponsored by Threshold Networks, Emusic.com, and Bigstorage.com.
204
205 If you like it, you can pay us to add new features to it that you
206 need, buy a support contract, or pay us to port it to another OS.
207
208config REISERFS_CHECK
209 bool "Enable reiserfs debug mode"
210 depends on REISERFS_FS
211 help
212 If you set this to Y, then ReiserFS will perform every check it can
213 possibly imagine of its internal consistency throughout its
214 operation. It will also go substantially slower. More than once we
215 have forgotten that this was on, and then gone despondent over the
216 latest benchmarks.:-) Use of this option allows our team to go all
217 out in checking for consistency when debugging without fear of its
218 effect on end users. If you are on the verge of sending in a bug
219 report, say Y and you might get a useful error message. Almost
220 everyone should say N.
221
222config REISERFS_PROC_INFO
223 bool "Stats in /proc/fs/reiserfs"
224 depends on REISERFS_FS
225 help
226 Create under /proc/fs/reiserfs a hierarchy of files, displaying
227 various ReiserFS statistics and internal data at the expense of
228 making your kernel or module slightly larger (+8 KB). This also
229 increases the amount of kernel memory required for each mount.
230 Almost everyone but ReiserFS developers and people fine-tuning
231 reiserfs or tracing problems should say N.
232
233config REISERFS_FS_XATTR
234 bool "ReiserFS extended attributes"
235 depends on REISERFS_FS
236 help
237 Extended attributes are name:value pairs associated with inodes by
238 the kernel or by users (see the attr(5) manual page, or visit
239 <http://acl.bestbits.at/> for details).
240
241 If unsure, say N.
242
243config REISERFS_FS_POSIX_ACL
244 bool "ReiserFS POSIX Access Control Lists"
245 depends on REISERFS_FS_XATTR
b84c2157 246 select FS_POSIX_ACL
1da177e4
LT
247 help
248 Posix Access Control Lists (ACLs) support permissions for users and
249 groups beyond the owner/group/world scheme.
250
251 To learn more about Access Control Lists, visit the Posix ACLs for
252 Linux website <http://acl.bestbits.at/>.
253
254 If you don't know what Access Control Lists are, say N
255
256config REISERFS_FS_SECURITY
257 bool "ReiserFS Security Labels"
258 depends on REISERFS_FS_XATTR
259 help
260 Security labels support alternative access control models
261 implemented by security modules like SELinux. This option
262 enables an extended attribute handler for file security
263 labels in the ReiserFS filesystem.
264
265 If you are not using a security module that requires using
266 extended attributes for file security labels, say N.
267
268config JFS_FS
269 tristate "JFS filesystem support"
270 select NLS
271 help
272 This is a port of IBM's Journaled Filesystem . More information is
273 available in the file <file:Documentation/filesystems/jfs.txt>.
274
275 If you do not intend to use the JFS filesystem, say N.
276
277config JFS_POSIX_ACL
278 bool "JFS POSIX Access Control Lists"
279 depends on JFS_FS
b84c2157 280 select FS_POSIX_ACL
1da177e4
LT
281 help
282 Posix Access Control Lists (ACLs) support permissions for users and
283 groups beyond the owner/group/world scheme.
284
285 To learn more about Access Control Lists, visit the Posix ACLs for
286 Linux website <http://acl.bestbits.at/>.
287
288 If you don't know what Access Control Lists are, say N
289
290config JFS_SECURITY
291 bool "JFS Security Labels"
292 depends on JFS_FS
293 help
294 Security labels support alternative access control models
295 implemented by security modules like SELinux. This option
296 enables an extended attribute handler for file security
297 labels in the jfs filesystem.
298
299 If you are not using a security module that requires using
300 extended attributes for file security labels, say N.
301
302config JFS_DEBUG
303 bool "JFS debugging"
304 depends on JFS_FS
305 help
306 If you are experiencing any problems with the JFS filesystem, say
307 Y here. This will result in additional debugging messages to be
308 written to the system log. Under normal circumstances, this
309 results in very little overhead.
310
311config JFS_STATISTICS
312 bool "JFS statistics"
313 depends on JFS_FS
314 help
315 Enabling this option will cause statistics from the JFS file system
316 to be made available to the user in the /proc/fs/jfs/ directory.
317
318config FS_POSIX_ACL
319# Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs)
320#
321# NOTE: you can implement Posix ACLs without these helpers (XFS does).
322# Never use this symbol for ifdefs.
323#
324 bool
b84c2157 325 default n
1da177e4
LT
326
327source "fs/xfs/Kconfig"
328
329config MINIX_FS
330 tristate "Minix fs support"
331 help
332 Minix is a simple operating system used in many classes about OS's.
333 The minix file system (method to organize files on a hard disk
334 partition or a floppy disk) was the original file system for Linux,
335 but has been superseded by the second extended file system ext2fs.
336 You don't want to use the minix file system on your hard disk
337 because of certain built-in restrictions, but it is sometimes found
338 on older Linux floppy disks. This option will enlarge your kernel
339 by about 28 KB. If unsure, say N.
340
341 To compile this file system support as a module, choose M here: the
342 module will be called minix. Note that the file system of your root
343 partition (the one containing the directory /) cannot be compiled as
344 a module.
345
346config ROMFS_FS
347 tristate "ROM file system support"
348 ---help---
349 This is a very small read-only file system mainly intended for
350 initial ram disks of installation disks, but it could be used for
351 other read-only media as well. Read
352 <file:Documentation/filesystems/romfs.txt> for details.
353
354 To compile this file system support as a module, choose M here: the
355 module will be called romfs. Note that the file system of your
356 root partition (the one containing the directory /) cannot be a
357 module.
358
359 If you don't know whether you need it, then you don't need it:
360 answer N.
361
0eeca283
RL
362config INOTIFY
363 bool "Inotify file change notification support"
364 default y
365 ---help---
3de11748
RL
366 Say Y here to enable inotify support and the associated system
367 calls. Inotify is a file change notification system and a
0eeca283
RL
368 replacement for dnotify. Inotify fixes numerous shortcomings in
369 dnotify and introduces several new features. It allows monitoring
3de11748
RL
370 of both files and directories via a single open fd. Other features
371 include multiple file events, one-shot support, and unmount
372 notification.
373
374 For more information, see Documentation/filesystems/inotify.txt
0eeca283
RL
375
376 If unsure, say Y.
377
1da177e4
LT
378config QUOTA
379 bool "Quota support"
380 help
381 If you say Y here, you will be able to set per user limits for disk
382 usage (also called disk quotas). Currently, it works for the
383 ext2, ext3, and reiserfs file system. ext3 also supports journalled
384 quotas for which you don't need to run quotacheck(8) after an unclean
919532a5
AB
385 shutdown.
386 For further details, read the Quota mini-HOWTO, available from
1da177e4
LT
387 <http://www.tldp.org/docs.html#howto>, or the documentation provided
388 with the quota tools. Probably the quota support is only useful for
389 multi user systems. If unsure, say N.
390
391config QFMT_V1
392 tristate "Old quota format support"
393 depends on QUOTA
394 help
395 This quota format was (is) used by kernels earlier than 2.4.22. If
396 you have quota working and you don't want to convert to new quota
397 format say Y here.
398
399config QFMT_V2
400 tristate "Quota format v2 support"
401 depends on QUOTA
402 help
403 This quota format allows using quotas with 32-bit UIDs/GIDs. If you
919532a5 404 need this functionality say Y here.
1da177e4
LT
405
406config QUOTACTL
407 bool
408 depends on XFS_QUOTA || QUOTA
409 default y
410
411config DNOTIFY
412 bool "Dnotify support" if EMBEDDED
413 default y
414 help
415 Dnotify is a directory-based per-fd file change notification system
416 that uses signals to communicate events to user-space. There exist
417 superior alternatives, but some applications may still rely on
418 dnotify.
419
420 Because of this, if unsure, say Y.
421
422config AUTOFS_FS
423 tristate "Kernel automounter support"
424 help
425 The automounter is a tool to automatically mount remote file systems
426 on demand. This implementation is partially kernel-based to reduce
427 overhead in the already-mounted case; this is unlike the BSD
428 automounter (amd), which is a pure user space daemon.
429
430 To use the automounter you need the user-space tools from the autofs
431 package; you can find the location in <file:Documentation/Changes>.
432 You also want to answer Y to "NFS file system support", below.
433
434 If you want to use the newer version of the automounter with more
435 features, say N here and say Y to "Kernel automounter v4 support",
436 below.
437
438 To compile this support as a module, choose M here: the module will be
439 called autofs.
440
441 If you are not a part of a fairly large, distributed network, you
442 probably do not need an automounter, and can say N here.
443
444config AUTOFS4_FS
445 tristate "Kernel automounter version 4 support (also supports v3)"
446 help
447 The automounter is a tool to automatically mount remote file systems
448 on demand. This implementation is partially kernel-based to reduce
449 overhead in the already-mounted case; this is unlike the BSD
450 automounter (amd), which is a pure user space daemon.
451
452 To use the automounter you need the user-space tools from
453 <ftp://ftp.kernel.org/pub/linux/daemons/autofs/v4/>; you also
454 want to answer Y to "NFS file system support", below.
455
456 To compile this support as a module, choose M here: the module will be
457 called autofs4. You will need to add "alias autofs autofs4" to your
458 modules configuration file.
459
460 If you are not a part of a fairly large, distributed network or
461 don't have a laptop which needs to dynamically reconfigure to the
462 local network, you probably do not need an automounter, and can say
463 N here.
464
04578f17
MS
465config FUSE_FS
466 tristate "Filesystem in Userspace support"
467 help
468 With FUSE it is possible to implement a fully functional filesystem
469 in a userspace program.
470
471 There's also companion library: libfuse. This library along with
472 utilities is available from the FUSE homepage:
473 <http://fuse.sourceforge.net/>
474
909021ea
MS
475 See <file:Documentation/filesystems/fuse.txt> for more information.
476 See <file:Documentation/Changes> for needed library/utility version.
477
04578f17
MS
478 If you want to develop a userspace FS, or if you want to use
479 a filesystem based on FUSE, answer Y or M.
480
1da177e4
LT
481menu "CD-ROM/DVD Filesystems"
482
483config ISO9660_FS
484 tristate "ISO 9660 CDROM file system support"
485 help
486 This is the standard file system used on CD-ROMs. It was previously
487 known as "High Sierra File System" and is called "hsfs" on other
488 Unix systems. The so-called Rock-Ridge extensions which allow for
489 long Unix filenames and symbolic links are also supported by this
490 driver. If you have a CD-ROM drive and want to do more with it than
491 just listen to audio CDs and watch its LEDs, say Y (and read
492 <file:Documentation/filesystems/isofs.txt> and the CD-ROM-HOWTO,
493 available from <http://www.tldp.org/docs.html#howto>), thereby
494 enlarging your kernel by about 27 KB; otherwise say N.
495
496 To compile this file system support as a module, choose M here: the
497 module will be called isofs.
498
499config JOLIET
500 bool "Microsoft Joliet CDROM extensions"
501 depends on ISO9660_FS
502 select NLS
503 help
504 Joliet is a Microsoft extension for the ISO 9660 CD-ROM file system
505 which allows for long filenames in unicode format (unicode is the
506 new 16 bit character code, successor to ASCII, which encodes the
507 characters of almost all languages of the world; see
508 <http://www.unicode.org/> for more information). Say Y here if you
509 want to be able to read Joliet CD-ROMs under Linux.
510
511config ZISOFS
512 bool "Transparent decompression extension"
513 depends on ISO9660_FS
514 select ZLIB_INFLATE
515 help
516 This is a Linux-specific extension to RockRidge which lets you store
517 data in compressed form on a CD-ROM and have it transparently
518 decompressed when the CD-ROM is accessed. See
519 <http://www.kernel.org/pub/linux/utils/fs/zisofs/> for the tools
520 necessary to create such a filesystem. Say Y here if you want to be
521 able to read such compressed CD-ROMs.
522
523config ZISOFS_FS
524# for fs/nls/Config.in
525 tristate
526 depends on ZISOFS
527 default ISO9660_FS
528
529config UDF_FS
530 tristate "UDF file system support"
531 help
532 This is the new file system used on some CD-ROMs and DVDs. Say Y if
533 you intend to mount DVD discs or CDRW's written in packet mode, or
534 if written to by other UDF utilities, such as DirectCD.
535 Please read <file:Documentation/filesystems/udf.txt>.
536
537 To compile this file system support as a module, choose M here: the
538 module will be called udf.
539
540 If unsure, say N.
541
542config UDF_NLS
543 bool
544 default y
545 depends on (UDF_FS=m && NLS) || (UDF_FS=y && NLS=y)
546
547endmenu
548
549menu "DOS/FAT/NT Filesystems"
550
551config FAT_FS
552 tristate
553 select NLS
554 help
555 If you want to use one of the FAT-based file systems (the MS-DOS and
556 VFAT (Windows 95) file systems), then you must say Y or M here
557 to include FAT support. You will then be able to mount partitions or
558 diskettes with FAT-based file systems and transparently access the
559 files on them, i.e. MSDOS files will look and behave just like all
560 other Unix files.
561
562 This FAT support is not a file system in itself, it only provides
563 the foundation for the other file systems. You will have to say Y or
564 M to at least one of "MSDOS fs support" or "VFAT fs support" in
565 order to make use of it.
566
567 Another way to read and write MSDOS floppies and hard drive
568 partitions from within Linux (but not transparently) is with the
569 mtools ("man mtools") program suite. You don't need to say Y here in
570 order to do that.
571
572 If you need to move large files on floppies between a DOS and a
573 Linux box, say Y here, mount the floppy under Linux with an MSDOS
574 file system and use GNU tar's M option. GNU tar is a program
575 available for Unix and DOS ("man tar" or "info tar").
576
577 It is now also becoming possible to read and write compressed FAT
578 file systems; read <file:Documentation/filesystems/fat_cvf.txt> for
579 details.
580
581 The FAT support will enlarge your kernel by about 37 KB. If unsure,
582 say Y.
583
584 To compile this as a module, choose M here: the module will be called
585 fat. Note that if you compile the FAT support as a module, you
586 cannot compile any of the FAT-based file systems into the kernel
587 -- they will have to be modules as well.
588
589config MSDOS_FS
590 tristate "MSDOS fs support"
591 select FAT_FS
592 help
593 This allows you to mount MSDOS partitions of your hard drive (unless
594 they are compressed; to access compressed MSDOS partitions under
595 Linux, you can either use the DOS emulator DOSEMU, described in the
596 DOSEMU-HOWTO, available from
597 <http://www.tldp.org/docs.html#howto>, or try dmsdosfs in
598 <ftp://ibiblio.org/pub/Linux/system/filesystems/dosfs/>. If you
599 intend to use dosemu with a non-compressed MSDOS partition, say Y
600 here) and MSDOS floppies. This means that file access becomes
601 transparent, i.e. the MSDOS files look and behave just like all
602 other Unix files.
603
604 If you have Windows 95 or Windows NT installed on your MSDOS
605 partitions, you should use the VFAT file system (say Y to "VFAT fs
606 support" below), or you will not be able to see the long filenames
607 generated by Windows 95 / Windows NT.
608
609 This option will enlarge your kernel by about 7 KB. If unsure,
610 answer Y. This will only work if you said Y to "DOS FAT fs support"
611 as well. To compile this as a module, choose M here: the module will
612 be called msdos.
613
614config VFAT_FS
615 tristate "VFAT (Windows-95) fs support"
616 select FAT_FS
617 help
618 This option provides support for normal Windows file systems with
619 long filenames. That includes non-compressed FAT-based file systems
620 used by Windows 95, Windows 98, Windows NT 4.0, and the Unix
621 programs from the mtools package.
622
623 The VFAT support enlarges your kernel by about 10 KB and it only
624 works if you said Y to the "DOS FAT fs support" above. Please read
625 the file <file:Documentation/filesystems/vfat.txt> for details. If
626 unsure, say Y.
627
628 To compile this as a module, choose M here: the module will be called
629 vfat.
630
631config FAT_DEFAULT_CODEPAGE
632 int "Default codepage for FAT"
633 depends on MSDOS_FS || VFAT_FS
634 default 437
635 help
636 This option should be set to the codepage of your FAT filesystems.
637 It can be overridden with the "codepage" mount option.
638 See <file:Documentation/filesystems/vfat.txt> for more information.
639
640config FAT_DEFAULT_IOCHARSET
641 string "Default iocharset for FAT"
642 depends on VFAT_FS
643 default "iso8859-1"
644 help
645 Set this to the default input/output character set you'd
646 like FAT to use. It should probably match the character set
647 that most of your FAT filesystems use, and can be overridden
648 with the "iocharset" mount option for FAT filesystems.
649 Note that "utf8" is not recommended for FAT filesystems.
650 If unsure, you shouldn't set "utf8" here.
651 See <file:Documentation/filesystems/vfat.txt> for more information.
652
653config NTFS_FS
654 tristate "NTFS file system support"
655 select NLS
656 help
657 NTFS is the file system of Microsoft Windows NT, 2000, XP and 2003.
658
659 Saying Y or M here enables read support. There is partial, but
660 safe, write support available. For write support you must also
661 say Y to "NTFS write support" below.
662
663 There are also a number of user-space tools available, called
664 ntfsprogs. These include ntfsundelete and ntfsresize, that work
665 without NTFS support enabled in the kernel.
666
667 This is a rewrite from scratch of Linux NTFS support and replaced
668 the old NTFS code starting with Linux 2.5.11. A backport to
669 the Linux 2.4 kernel series is separately available as a patch
670 from the project web site.
671
672 For more information see <file:Documentation/filesystems/ntfs.txt>
673 and <http://linux-ntfs.sourceforge.net/>.
674
675 To compile this file system support as a module, choose M here: the
676 module will be called ntfs.
677
678 If you are not using Windows NT, 2000, XP or 2003 in addition to
679 Linux on your computer it is safe to say N.
680
681config NTFS_DEBUG
682 bool "NTFS debugging support"
683 depends on NTFS_FS
684 help
685 If you are experiencing any problems with the NTFS file system, say
686 Y here. This will result in additional consistency checks to be
687 performed by the driver as well as additional debugging messages to
688 be written to the system log. Note that debugging messages are
689 disabled by default. To enable them, supply the option debug_msgs=1
690 at the kernel command line when booting the kernel or as an option
691 to insmod when loading the ntfs module. Once the driver is active,
692 you can enable debugging messages by doing (as root):
693 echo 1 > /proc/sys/fs/ntfs-debug
694 Replacing the "1" with "0" would disable debug messages.
695
696 If you leave debugging messages disabled, this results in little
697 overhead, but enabling debug messages results in very significant
698 slowdown of the system.
699
700 When reporting bugs, please try to have available a full dump of
701 debugging messages while the misbehaviour was occurring.
702
703config NTFS_RW
704 bool "NTFS write support"
705 depends on NTFS_FS
706 help
707 This enables the partial, but safe, write support in the NTFS driver.
708
709 The only supported operation is overwriting existing files, without
710 changing the file length. No file or directory creation, deletion or
711 renaming is possible. Note only non-resident files can be written to
712 so you may find that some very small files (<500 bytes or so) cannot
713 be written to.
714
715 While we cannot guarantee that it will not damage any data, we have
716 so far not received a single report where the driver would have
717 damaged someones data so we assume it is perfectly safe to use.
718
719 Note: While write support is safe in this version (a rewrite from
720 scratch of the NTFS support), it should be noted that the old NTFS
721 write support, included in Linux 2.5.10 and before (since 1997),
722 is not safe.
723
724 This is currently useful with TopologiLinux. TopologiLinux is run
725 on top of any DOS/Microsoft Windows system without partitioning your
726 hard disk. Unlike other Linux distributions TopologiLinux does not
727 need its own partition. For more information see
728 <http://topologi-linux.sourceforge.net/>
729
730 It is perfectly safe to say N here.
731
732endmenu
733
734menu "Pseudo filesystems"
735
736config PROC_FS
737 bool "/proc file system support"
738 help
739 This is a virtual file system providing information about the status
740 of the system. "Virtual" means that it doesn't take up any space on
741 your hard disk: the files are created on the fly by the kernel when
742 you try to access them. Also, you cannot read the files with older
743 version of the program less: you need to use more or cat.
744
745 It's totally cool; for example, "cat /proc/interrupts" gives
746 information about what the different IRQs are used for at the moment
747 (there is a small number of Interrupt ReQuest lines in your computer
748 that are used by the attached devices to gain the CPU's attention --
749 often a source of trouble if two devices are mistakenly configured
750 to use the same IRQ). The program procinfo to display some
751 information about your system gathered from the /proc file system.
752
753 Before you can use the /proc file system, it has to be mounted,
754 meaning it has to be given a location in the directory hierarchy.
755 That location should be /proc. A command such as "mount -t proc proc
756 /proc" or the equivalent line in /etc/fstab does the job.
757
758 The /proc file system is explained in the file
759 <file:Documentation/filesystems/proc.txt> and on the proc(5) manpage
760 ("man 5 proc").
761
762 This option will enlarge your kernel by about 67 KB. Several
763 programs depend on this, so everyone should say Y here.
764
765config PROC_KCORE
766 bool "/proc/kcore support" if !ARM
767 depends on PROC_FS && MMU
768
666bfddb
VG
769config PROC_VMCORE
770 bool "/proc/vmcore support (EXPERIMENTAL)"
771 depends on PROC_FS && EMBEDDED && EXPERIMENTAL && CRASH_DUMP
772 help
773 Exports the dump image of crashed kernel in ELF format.
774
1da177e4
LT
775config SYSFS
776 bool "sysfs file system support" if EMBEDDED
777 default y
778 help
779 The sysfs filesystem is a virtual filesystem that the kernel uses to
780 export internal kernel objects, their attributes, and their
781 relationships to one another.
782
783 Users can use sysfs to ascertain useful information about the running
784 kernel, such as the devices the kernel has discovered on each bus and
785 which driver each is bound to. sysfs can also be used to tune devices
786 and other kernel subsystems.
787
788 Some system agents rely on the information in sysfs to operate.
789 /sbin/hotplug uses device and object attributes in sysfs to assist in
790 delegating policy decisions, like persistantly naming devices.
791
792 sysfs is currently used by the block subsystem to mount the root
793 partition. If sysfs is disabled you must specify the boot device on
794 the kernel boot command line via its major and minor numbers. For
795 example, "root=03:01" for /dev/hda1.
796
797 Designers of embedded systems may wish to say N here to conserve space.
798
1da177e4
LT
799config TMPFS
800 bool "Virtual memory file system support (former shm fs)"
801 help
802 Tmpfs is a file system which keeps all files in virtual memory.
803
804 Everything in tmpfs is temporary in the sense that no files will be
805 created on your hard drive. The files live in memory and swap
806 space. If you unmount a tmpfs instance, everything stored therein is
807 lost.
808
809 See <file:Documentation/filesystems/tmpfs.txt> for details.
810
1da177e4
LT
811config HUGETLBFS
812 bool "HugeTLB file system support"
0d078f6f 813 depends X86 || IA64 || PPC64 || SPARC64 || SUPERH || BROKEN
1da177e4
LT
814
815config HUGETLB_PAGE
816 def_bool HUGETLBFS
817
818config RAMFS
819 bool
820 default y
821 ---help---
822 Ramfs is a file system which keeps all files in RAM. It allows
823 read and write access.
824
825 It is more of an programming example than a useable file system. If
826 you need a file system which lives in RAM with limit checking use
827 tmpfs.
828
829 To compile this as a module, choose M here: the module will be called
830 ramfs.
831
e82894f8
TZ
832config RELAYFS_FS
833 tristate "Relayfs file system support"
834 ---help---
835 Relayfs is a high-speed data relay filesystem designed to provide
836 an efficient mechanism for tools and facilities to relay large
837 amounts of data from kernel space to user space.
838
839 To compile this code as a module, choose M here: the module will be
840 called relayfs.
841
842 If unsure, say N.
843
1da177e4
LT
844endmenu
845
846menu "Miscellaneous filesystems"
847
848config ADFS_FS
849 tristate "ADFS file system support (EXPERIMENTAL)"
850 depends on EXPERIMENTAL
851 help
852 The Acorn Disc Filing System is the standard file system of the
853 RiscOS operating system which runs on Acorn's ARM-based Risc PC
854 systems and the Acorn Archimedes range of machines. If you say Y
855 here, Linux will be able to read from ADFS partitions on hard drives
856 and from ADFS-formatted floppy discs. If you also want to be able to
857 write to those devices, say Y to "ADFS write support" below.
858
859 The ADFS partition should be the first partition (i.e.,
860 /dev/[hs]d?1) on each of your drives. Please read the file
861 <file:Documentation/filesystems/adfs.txt> for further details.
862
863 To compile this code as a module, choose M here: the module will be
864 called adfs.
865
866 If unsure, say N.
867
868config ADFS_FS_RW
869 bool "ADFS write support (DANGEROUS)"
870 depends on ADFS_FS
871 help
872 If you say Y here, you will be able to write to ADFS partitions on
873 hard drives and ADFS-formatted floppy disks. This is experimental
874 codes, so if you're unsure, say N.
875
876config AFFS_FS
877 tristate "Amiga FFS file system support (EXPERIMENTAL)"
878 depends on EXPERIMENTAL
879 help
880 The Fast File System (FFS) is the common file system used on hard
881 disks by Amiga(tm) systems since AmigaOS Version 1.3 (34.20). Say Y
882 if you want to be able to read and write files from and to an Amiga
883 FFS partition on your hard drive. Amiga floppies however cannot be
884 read with this driver due to an incompatibility of the floppy
885 controller used in an Amiga and the standard floppy controller in
886 PCs and workstations. Read <file:Documentation/filesystems/affs.txt>
887 and <file:fs/affs/Changes>.
888
889 With this driver you can also mount disk files used by Bernd
890 Schmidt's Un*X Amiga Emulator
891 (<http://www.freiburg.linux.de/~uae/>).
892 If you want to do this, you will also need to say Y or M to "Loop
893 device support", above.
894
895 To compile this file system support as a module, choose M here: the
896 module will be called affs. If unsure, say N.
897
898config HFS_FS
899 tristate "Apple Macintosh file system support (EXPERIMENTAL)"
900 depends on EXPERIMENTAL
878129a3 901 select NLS
1da177e4
LT
902 help
903 If you say Y here, you will be able to mount Macintosh-formatted
904 floppy disks and hard drive partitions with full read-write access.
905 Please read <file:fs/hfs/HFS.txt> to learn about the available mount
906 options.
907
908 To compile this file system support as a module, choose M here: the
909 module will be called hfs.
910
911config HFSPLUS_FS
912 tristate "Apple Extended HFS file system support"
913 select NLS
914 select NLS_UTF8
915 help
916 If you say Y here, you will be able to mount extended format
917 Macintosh-formatted hard drive partitions with full read-write access.
918
919 This file system is often called HFS+ and was introduced with
920 MacOS 8. It includes all Mac specific filesystem data such as
921 data forks and creator codes, but it also has several UNIX
922 style features such as file ownership and permissions.
923
924config BEFS_FS
925 tristate "BeOS file system (BeFS) support (read only) (EXPERIMENTAL)"
926 depends on EXPERIMENTAL
927 select NLS
928 help
929 The BeOS File System (BeFS) is the native file system of Be, Inc's
930 BeOS. Notable features include support for arbitrary attributes
931 on files and directories, and database-like indeces on selected
932 attributes. (Also note that this driver doesn't make those features
933 available at this time). It is a 64 bit filesystem, so it supports
934 extremly large volumes and files.
935
936 If you use this filesystem, you should also say Y to at least one
937 of the NLS (native language support) options below.
938
939 If you don't know what this is about, say N.
940
941 To compile this as a module, choose M here: the module will be
942 called befs.
943
944config BEFS_DEBUG
945 bool "Debug BeFS"
946 depends on BEFS_FS
947 help
948 If you say Y here, you can use the 'debug' mount option to enable
949 debugging output from the driver.
950
951config BFS_FS
952 tristate "BFS file system support (EXPERIMENTAL)"
953 depends on EXPERIMENTAL
954 help
955 Boot File System (BFS) is a file system used under SCO UnixWare to
956 allow the bootloader access to the kernel image and other important
957 files during the boot process. It is usually mounted under /stand
958 and corresponds to the slice marked as "STAND" in the UnixWare
959 partition. You should say Y if you want to read or write the files
960 on your /stand slice from within Linux. You then also need to say Y
961 to "UnixWare slices support", below. More information about the BFS
962 file system is contained in the file
963 <file:Documentation/filesystems/bfs.txt>.
964
965 If you don't know what this is about, say N.
966
967 To compile this as a module, choose M here: the module will be called
968 bfs. Note that the file system of your root partition (the one
969 containing the directory /) cannot be compiled as a module.
970
971
972
973config EFS_FS
974 tristate "EFS file system support (read only) (EXPERIMENTAL)"
975 depends on EXPERIMENTAL
976 help
977 EFS is an older file system used for non-ISO9660 CD-ROMs and hard
978 disk partitions by SGI's IRIX operating system (IRIX 6.0 and newer
979 uses the XFS file system for hard disk partitions however).
980
981 This implementation only offers read-only access. If you don't know
982 what all this is about, it's safe to say N. For more information
983 about EFS see its home page at <http://aeschi.ch.eu.org/efs/>.
984
985 To compile the EFS file system support as a module, choose M here: the
986 module will be called efs.
987
988config JFFS_FS
989 tristate "Journalling Flash File System (JFFS) support"
990 depends on MTD
991 help
992 JFFS is the Journaling Flash File System developed by Axis
993 Communications in Sweden, aimed at providing a crash/powerdown-safe
994 file system for disk-less embedded devices. Further information is
995 available at (<http://developer.axis.com/software/jffs/>).
996
997config JFFS_FS_VERBOSE
998 int "JFFS debugging verbosity (0 = quiet, 3 = noisy)"
999 depends on JFFS_FS
1000 default "0"
1001 help
1002 Determines the verbosity level of the JFFS debugging messages.
1003
1004config JFFS_PROC_FS
1005 bool "JFFS stats available in /proc filesystem"
1006 depends on JFFS_FS && PROC_FS
1007 help
1008 Enabling this option will cause statistics from mounted JFFS file systems
1009 to be made available to the user in the /proc/fs/jffs/ directory.
1010
1011config JFFS2_FS
1012 tristate "Journalling Flash File System v2 (JFFS2) support"
1013 select CRC32
1014 depends on MTD
1015 help
1016 JFFS2 is the second generation of the Journalling Flash File System
1017 for use on diskless embedded devices. It provides improved wear
1018 levelling, compression and support for hard links. You cannot use
1019 this on normal block devices, only on 'MTD' devices.
1020
1021 Further information on the design and implementation of JFFS2 is
1022 available at <http://sources.redhat.com/jffs2/>.
1023
1024config JFFS2_FS_DEBUG
1025 int "JFFS2 debugging verbosity (0 = quiet, 2 = noisy)"
1026 depends on JFFS2_FS
1027 default "0"
1028 help
1029 This controls the amount of debugging messages produced by the JFFS2
1030 code. Set it to zero for use in production systems. For evaluation,
1031 testing and debugging, it's advisable to set it to one. This will
1032 enable a few assertions and will print debugging messages at the
1033 KERN_DEBUG loglevel, where they won't normally be visible. Level 2
1034 is unlikely to be useful - it enables extra debugging in certain
1035 areas which at one point needed debugging, but when the bugs were
1036 located and fixed, the detailed messages were relegated to level 2.
1037
1038 If reporting bugs, please try to have available a full dump of the
1039 messages at debug level 1 while the misbehaviour was occurring.
1040
2f82ce1e
AV
1041config JFFS2_FS_WRITEBUFFER
1042 bool "JFFS2 write-buffering support"
1da177e4 1043 depends on JFFS2_FS
2f82ce1e 1044 default y
1da177e4 1045 help
2f82ce1e 1046 This enables the write-buffering support in JFFS2.
1da177e4 1047
2f82ce1e
AV
1048 This functionality is required to support JFFS2 on the following
1049 types of flash devices:
1050 - NAND flash
1051 - NOR flash with transparent ECC
1052 - DataFlash
1da177e4 1053
e631ddba
FH
1054config JFFS2_SUMMARY
1055 bool "JFFS2 summary support (EXPERIMENTAL)"
1056 depends on JFFS2_FS && EXPERIMENTAL
1057 default n
1058 help
1059 This feature makes it possible to use summary information
1060 for faster filesystem mount.
1061
1062 The summary information can be inserted into a filesystem image
1063 by the utility 'sumtool'.
1064
1065 If unsure, say 'N'.
1066
1da177e4
LT
1067config JFFS2_COMPRESSION_OPTIONS
1068 bool "Advanced compression options for JFFS2"
1069 depends on JFFS2_FS
1070 default n
1071 help
1072 Enabling this option allows you to explicitly choose which
1073 compression modules, if any, are enabled in JFFS2. Removing
1074 compressors and mean you cannot read existing file systems,
1075 and enabling experimental compressors can mean that you
1076 write a file system which cannot be read by a standard kernel.
1077
1078 If unsure, you should _definitely_ say 'N'.
1079
1080config JFFS2_ZLIB
1081 bool "JFFS2 ZLIB compression support" if JFFS2_COMPRESSION_OPTIONS
1082 select ZLIB_INFLATE
1083 select ZLIB_DEFLATE
1084 depends on JFFS2_FS
1085 default y
1086 help
1087 Zlib is designed to be a free, general-purpose, legally unencumbered,
182ec4ee 1088 lossless data-compression library for use on virtually any computer
1da177e4
LT
1089 hardware and operating system. See <http://www.gzip.org/zlib/> for
1090 further information.
182ec4ee 1091
1da177e4
LT
1092 Say 'Y' if unsure.
1093
1094config JFFS2_RTIME
1095 bool "JFFS2 RTIME compression support" if JFFS2_COMPRESSION_OPTIONS
1096 depends on JFFS2_FS
1097 default y
1098 help
1099 Rtime does manage to recompress already-compressed data. Say 'Y' if unsure.
1100
1101config JFFS2_RUBIN
1102 bool "JFFS2 RUBIN compression support" if JFFS2_COMPRESSION_OPTIONS
1103 depends on JFFS2_FS
1104 default n
1105 help
1106 RUBINMIPS and DYNRUBIN compressors. Say 'N' if unsure.
1107
1108choice
1109 prompt "JFFS2 default compression mode" if JFFS2_COMPRESSION_OPTIONS
1110 default JFFS2_CMODE_PRIORITY
1111 depends on JFFS2_FS
1112 help
182ec4ee 1113 You can set here the default compression mode of JFFS2 from
1da177e4
LT
1114 the available compression modes. Don't touch if unsure.
1115
1116config JFFS2_CMODE_NONE
1117 bool "no compression"
1118 help
1119 Uses no compression.
1120
1121config JFFS2_CMODE_PRIORITY
1122 bool "priority"
1123 help
182ec4ee 1124 Tries the compressors in a predefinied order and chooses the first
1da177e4
LT
1125 successful one.
1126
1127config JFFS2_CMODE_SIZE
1128 bool "size (EXPERIMENTAL)"
1129 help
182ec4ee 1130 Tries all compressors and chooses the one which has the smallest
1da177e4
LT
1131 result.
1132
1133endchoice
1134
1135config CRAMFS
1136 tristate "Compressed ROM file system support (cramfs)"
1137 select ZLIB_INFLATE
1138 help
1139 Saying Y here includes support for CramFs (Compressed ROM File
1140 System). CramFs is designed to be a simple, small, and compressed
1141 file system for ROM based embedded systems. CramFs is read-only,
1142 limited to 256MB file systems (with 16MB files), and doesn't support
1143 16/32 bits uid/gid, hard links and timestamps.
1144
1145 See <file:Documentation/filesystems/cramfs.txt> and
1146 <file:fs/cramfs/README> for further information.
1147
1148 To compile this as a module, choose M here: the module will be called
1149 cramfs. Note that the root file system (the one containing the
1150 directory /) cannot be compiled as a module.
1151
1152 If unsure, say N.
1153
1154config VXFS_FS
1155 tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
1156 help
1157 FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
1158 file system format. VERITAS VxFS(TM) is the standard file system
1159 of SCO UnixWare (and possibly others) and optionally available
1160 for Sunsoft Solaris, HP-UX and many other operating systems.
1161 Currently only readonly access is supported.
1162
1163 NOTE: the file system type as used by mount(1), mount(2) and
1164 fstab(5) is 'vxfs' as it describes the file system format, not
1165 the actual driver.
1166
1167 To compile this as a module, choose M here: the module will be
1168 called freevxfs. If unsure, say N.
1169
1170
1171config HPFS_FS
1172 tristate "OS/2 HPFS file system support"
1173 help
1174 OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
1175 is the file system used for organizing files on OS/2 hard disk
1176 partitions. Say Y if you want to be able to read files from and
1177 write files to an OS/2 HPFS partition on your hard drive. OS/2
1178 floppies however are in regular MSDOS format, so you don't need this
1179 option in order to be able to read them. Read
1180 <file:Documentation/filesystems/hpfs.txt>.
1181
1182 To compile this file system support as a module, choose M here: the
1183 module will be called hpfs. If unsure, say N.
1184
1185
1186
1187config QNX4FS_FS
1188 tristate "QNX4 file system support (read only)"
1189 help
1190 This is the file system used by the real-time operating systems
1191 QNX 4 and QNX 6 (the latter is also called QNX RTP).
1192 Further information is available at <http://www.qnx.com/>.
1193 Say Y if you intend to mount QNX hard disks or floppies.
1194 Unless you say Y to "QNX4FS read-write support" below, you will
1195 only be able to read these file systems.
1196
1197 To compile this file system support as a module, choose M here: the
1198 module will be called qnx4.
1199
1200 If you don't know whether you need it, then you don't need it:
1201 answer N.
1202
1203config QNX4FS_RW
1204 bool "QNX4FS write support (DANGEROUS)"
1205 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
1206 help
1207 Say Y if you want to test write support for QNX4 file systems.
1208
1209 It's currently broken, so for now:
1210 answer N.
1211
1212
1213
1214config SYSV_FS
1215 tristate "System V/Xenix/V7/Coherent file system support"
1216 help
1217 SCO, Xenix and Coherent are commercial Unix systems for Intel
1218 machines, and Version 7 was used on the DEC PDP-11. Saying Y
1219 here would allow you to read from their floppies and hard disk
1220 partitions.
1221
1222 If you have floppies or hard disk partitions like that, it is likely
1223 that they contain binaries from those other Unix systems; in order
1224 to run these binaries, you will want to install linux-abi which is a
1225 a set of kernel modules that lets you run SCO, Xenix, Wyse,
1226 UnixWare, Dell Unix and System V programs under Linux. It is
1227 available via FTP (user: ftp) from
1228 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
1229 NOTE: that will work only for binaries from Intel-based systems;
1230 PDP ones will have to wait until somebody ports Linux to -11 ;-)
1231
1232 If you only intend to mount files from some other Unix over the
1233 network using NFS, you don't need the System V file system support
1234 (but you need NFS file system support obviously).
1235
1236 Note that this option is generally not needed for floppies, since a
1237 good portable way to transport files and directories between unixes
1238 (and even other operating systems) is given by the tar program ("man
1239 tar" or preferably "info tar"). Note also that this option has
1240 nothing whatsoever to do with the option "System V IPC". Read about
1241 the System V file system in
1242 <file:Documentation/filesystems/sysv-fs.txt>.
1243 Saying Y here will enlarge your kernel by about 27 KB.
1244
1245 To compile this as a module, choose M here: the module will be called
1246 sysv.
1247
1248 If you haven't heard about all of this before, it's safe to say N.
1249
1250
1251
1252config UFS_FS
1253 tristate "UFS file system support (read only)"
1254 help
1255 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
1256 OpenBSD and NeXTstep) use a file system called UFS. Some System V
1257 Unixes can create and mount hard disk partitions and diskettes using
1258 this file system as well. Saying Y here will allow you to read from
1259 these partitions; if you also want to write to them, say Y to the
1260 experimental "UFS file system write support", below. Please read the
1261 file <file:Documentation/filesystems/ufs.txt> for more information.
1262
1263 The recently released UFS2 variant (used in FreeBSD 5.x) is
1264 READ-ONLY supported.
1265
1266 If you only intend to mount files from some other Unix over the
1267 network using NFS, you don't need the UFS file system support (but
1268 you need NFS file system support obviously).
1269
1270 Note that this option is generally not needed for floppies, since a
1271 good portable way to transport files and directories between unixes
1272 (and even other operating systems) is given by the tar program ("man
1273 tar" or preferably "info tar").
1274
1275 When accessing NeXTstep files, you may need to convert them from the
1276 NeXT character set to the Latin1 character set; use the program
1277 recode ("info recode") for this purpose.
1278
1279 To compile the UFS file system support as a module, choose M here: the
1280 module will be called ufs.
1281
1282 If you haven't heard about all of this before, it's safe to say N.
1283
1284config UFS_FS_WRITE
1285 bool "UFS file system write support (DANGEROUS)"
1286 depends on UFS_FS && EXPERIMENTAL
1287 help
1288 Say Y here if you want to try writing to UFS partitions. This is
1289 experimental, so you should back up your UFS partitions beforehand.
1290
1291endmenu
1292
1293menu "Network File Systems"
1294 depends on NET
1295
1296config NFS_FS
1297 tristate "NFS file system support"
1298 depends on INET
1299 select LOCKD
1300 select SUNRPC
b7fa0554 1301 select NFS_ACL_SUPPORT if NFS_V3_ACL
1da177e4
LT
1302 help
1303 If you are connected to some other (usually local) Unix computer
1304 (using SLIP, PLIP, PPP or Ethernet) and want to mount files residing
1305 on that computer (the NFS server) using the Network File Sharing
1306 protocol, say Y. "Mounting files" means that the client can access
1307 the files with usual UNIX commands as if they were sitting on the
1308 client's hard disk. For this to work, the server must run the
1309 programs nfsd and mountd (but does not need to have NFS file system
1310 support enabled in its kernel). NFS is explained in the Network
1311 Administrator's Guide, available from
1312 <http://www.tldp.org/docs.html#guide>, on its man page: "man
1313 nfs", and in the NFS-HOWTO.
1314
1315 A superior but less widely used alternative to NFS is provided by
1316 the Coda file system; see "Coda file system support" below.
1317
1318 If you say Y here, you should have said Y to TCP/IP networking also.
1319 This option would enlarge your kernel by about 27 KB.
1320
1321 To compile this file system support as a module, choose M here: the
1322 module will be called nfs.
1323
1324 If you are configuring a diskless machine which will mount its root
1325 file system over NFS at boot time, say Y here and to "Kernel
1326 level IP autoconfiguration" above and to "Root file system on NFS"
1327 below. You cannot compile this driver as a module in this case.
1328 There are two packages designed for booting diskless machines over
1329 the net: netboot, available from
1330 <http://ftp1.sourceforge.net/netboot/>, and Etherboot,
1331 available from <http://ftp1.sourceforge.net/etherboot/>.
1332
1333 If you don't know what all this is about, say N.
1334
1335config NFS_V3
1336 bool "Provide NFSv3 client support"
1337 depends on NFS_FS
1338 help
1339 Say Y here if you want your NFS client to be able to speak version
1340 3 of the NFS protocol.
1341
1342 If unsure, say Y.
1343
b7fa0554
AG
1344config NFS_V3_ACL
1345 bool "Provide client support for the NFSv3 ACL protocol extension"
1346 depends on NFS_V3
1347 help
1348 Implement the NFSv3 ACL protocol extension for manipulating POSIX
1349 Access Control Lists. The server should also be compiled with
1350 the NFSv3 ACL protocol extension; see the CONFIG_NFSD_V3_ACL option.
1351
1352 If unsure, say N.
1353
1da177e4
LT
1354config NFS_V4
1355 bool "Provide NFSv4 client support (EXPERIMENTAL)"
1356 depends on NFS_FS && EXPERIMENTAL
1357 select RPCSEC_GSS_KRB5
1358 help
1359 Say Y here if you want your NFS client to be able to speak the newer
1360 version 4 of the NFS protocol.
1361
1362 Note: Requires auxiliary userspace daemons which may be found on
1363 http://www.citi.umich.edu/projects/nfsv4/
1364
1365 If unsure, say N.
1366
1367config NFS_DIRECTIO
1368 bool "Allow direct I/O on NFS files (EXPERIMENTAL)"
1369 depends on NFS_FS && EXPERIMENTAL
1370 help
1371 This option enables applications to perform uncached I/O on files
1372 in NFS file systems using the O_DIRECT open() flag. When O_DIRECT
1373 is set for a file, its data is not cached in the system's page
1374 cache. Data is moved to and from user-level application buffers
1375 directly. Unlike local disk-based file systems, NFS O_DIRECT has
1376 no alignment restrictions.
1377
1378 Unless your program is designed to use O_DIRECT properly, you are
1379 much better off allowing the NFS client to manage data caching for
1380 you. Misusing O_DIRECT can cause poor server performance or network
1381 storms. This kernel build option defaults OFF to avoid exposing
1382 system administrators unwittingly to a potentially hazardous
1383 feature.
1384
1385 For more details on NFS O_DIRECT, see fs/nfs/direct.c.
1386
1387 If unsure, say N. This reduces the size of the NFS client, and
1388 causes open() to return EINVAL if a file residing in NFS is
1389 opened with the O_DIRECT flag.
1390
1391config NFSD
1392 tristate "NFS server support"
1393 depends on INET
1394 select LOCKD
1395 select SUNRPC
1396 select EXPORTFS
a257cdd0 1397 select NFS_ACL_SUPPORT if NFSD_V3_ACL || NFSD_V2_ACL
1da177e4
LT
1398 help
1399 If you want your Linux box to act as an NFS *server*, so that other
1400 computers on your local network which support NFS can access certain
1401 directories on your box transparently, you have two options: you can
1402 use the self-contained user space program nfsd, in which case you
1403 should say N here, or you can say Y and use the kernel based NFS
1404 server. The advantage of the kernel based solution is that it is
1405 faster.
1406
1407 In either case, you will need support software; the respective
1408 locations are given in the file <file:Documentation/Changes> in the
1409 NFS section.
1410
1411 If you say Y here, you will get support for version 2 of the NFS
1412 protocol (NFSv2). If you also want NFSv3, say Y to the next question
1413 as well.
1414
1415 Please read the NFS-HOWTO, available from
1416 <http://www.tldp.org/docs.html#howto>.
1417
1418 To compile the NFS server support as a module, choose M here: the
1419 module will be called nfsd. If unsure, say N.
1420
a257cdd0
AG
1421config NFSD_V2_ACL
1422 bool
1423 depends on NFSD
1424
1da177e4
LT
1425config NFSD_V3
1426 bool "Provide NFSv3 server support"
1427 depends on NFSD
1428 help
1429 If you would like to include the NFSv3 server as well as the NFSv2
1430 server, say Y here. If unsure, say Y.
1431
a257cdd0
AG
1432config NFSD_V3_ACL
1433 bool "Provide server support for the NFSv3 ACL protocol extension"
1434 depends on NFSD_V3
1435 select NFSD_V2_ACL
1436 help
1437 Implement the NFSv3 ACL protocol extension for manipulating POSIX
1438 Access Control Lists on exported file systems. NFS clients should
1439 be compiled with the NFSv3 ACL protocol extension; see the
1440 CONFIG_NFS_V3_ACL option. If unsure, say N.
1441
1da177e4
LT
1442config NFSD_V4
1443 bool "Provide NFSv4 server support (EXPERIMENTAL)"
1444 depends on NFSD_V3 && EXPERIMENTAL
1445 select NFSD_TCP
a55370a3
N
1446 select CRYPTO_MD5
1447 select CRYPTO
b84c2157 1448 select FS_POSIX_ACL
1da177e4
LT
1449 help
1450 If you would like to include the NFSv4 server as well as the NFSv2
1451 and NFSv3 servers, say Y here. This feature is experimental, and
1452 should only be used if you are interested in helping to test NFSv4.
1453 If unsure, say N.
1454
1455config NFSD_TCP
1456 bool "Provide NFS server over TCP support"
1457 depends on NFSD
1458 default y
1459 help
1460 If you want your NFS server to support TCP connections, say Y here.
1461 TCP connections usually perform better than the default UDP when
1462 the network is lossy or congested. If unsure, say Y.
1463
1464config ROOT_NFS
1465 bool "Root file system on NFS"
1466 depends on NFS_FS=y && IP_PNP
1467 help
1468 If you want your Linux box to mount its whole root file system (the
1469 one containing the directory /) from some other computer over the
1470 net via NFS (presumably because your box doesn't have a hard disk),
1471 say Y. Read <file:Documentation/nfsroot.txt> for details. It is
1472 likely that in this case, you also want to say Y to "Kernel level IP
1473 autoconfiguration" so that your box can discover its network address
1474 at boot time.
1475
1476 Most people say N here.
1477
1478config LOCKD
1479 tristate
1480
1481config LOCKD_V4
1482 bool
1483 depends on NFSD_V3 || NFS_V3
1484 default y
1485
1486config EXPORTFS
1487 tristate
1488
a257cdd0
AG
1489config NFS_ACL_SUPPORT
1490 tristate
1491 select FS_POSIX_ACL
1492
1493config NFS_COMMON
1494 bool
1495 depends on NFSD || NFS_FS
1496 default y
1497
1da177e4
LT
1498config SUNRPC
1499 tristate
1500
1501config SUNRPC_GSS
1502 tristate
1503
1504config RPCSEC_GSS_KRB5
1505 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
1506 depends on SUNRPC && EXPERIMENTAL
1507 select SUNRPC_GSS
1508 select CRYPTO
1509 select CRYPTO_MD5
1510 select CRYPTO_DES
1511 help
1512 Provides for secure RPC calls by means of a gss-api
1513 mechanism based on Kerberos V5. This is required for
1514 NFSv4.
1515
1516 Note: Requires an auxiliary userspace daemon which may be found on
1517 http://www.citi.umich.edu/projects/nfsv4/
1518
1519 If unsure, say N.
1520
1521config RPCSEC_GSS_SPKM3
1522 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
1523 depends on SUNRPC && EXPERIMENTAL
1524 select SUNRPC_GSS
1525 select CRYPTO
1526 select CRYPTO_MD5
1527 select CRYPTO_DES
1528 help
1529 Provides for secure RPC calls by means of a gss-api
1530 mechanism based on the SPKM3 public-key mechanism.
1531
1532 Note: Requires an auxiliary userspace daemon which may be found on
1533 http://www.citi.umich.edu/projects/nfsv4/
1534
1535 If unsure, say N.
1536
1537config SMB_FS
1538 tristate "SMB file system support (to mount Windows shares etc.)"
1539 depends on INET
1540 select NLS
1541 help
1542 SMB (Server Message Block) is the protocol Windows for Workgroups
1543 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
1544 files and printers over local networks. Saying Y here allows you to
1545 mount their file systems (often called "shares" in this context) and
1546 access them just like any other Unix directory. Currently, this
1547 works only if the Windows machines use TCP/IP as the underlying
1548 transport protocol, and not NetBEUI. For details, read
1549 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
1550 available from <http://www.tldp.org/docs.html#howto>.
1551
1552 Note: if you just want your box to act as an SMB *server* and make
1553 files and printing services available to Windows clients (which need
1554 to have a TCP/IP stack), you don't need to say Y here; you can use
1555 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
1556 for that.
1557
1558 General information about how to connect Linux, Windows machines and
1559 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1560
1561 To compile the SMB support as a module, choose M here: the module will
1562 be called smbfs. Most people say N, however.
1563
1564config SMB_NLS_DEFAULT
1565 bool "Use a default NLS"
1566 depends on SMB_FS
1567 help
1568 Enabling this will make smbfs use nls translations by default. You
1569 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
1570 settings and you need to give the default nls for the SMB server as
1571 CONFIG_SMB_NLS_REMOTE.
1572
1573 The nls settings can be changed at mount time, if your smbmount
1574 supports that, using the codepage and iocharset parameters.
1575
1576 smbmount from samba 2.2.0 or later supports this.
1577
1578config SMB_NLS_REMOTE
1579 string "Default Remote NLS Option"
1580 depends on SMB_NLS_DEFAULT
1581 default "cp437"
1582 help
1583 This setting allows you to specify a default value for which
1584 codepage the server uses. If this field is left blank no
1585 translations will be done by default. The local codepage/charset
1586 default to CONFIG_NLS_DEFAULT.
1587
1588 The nls settings can be changed at mount time, if your smbmount
1589 supports that, using the codepage and iocharset parameters.
1590
1591 smbmount from samba 2.2.0 or later supports this.
1592
1593config CIFS
1594 tristate "CIFS support (advanced network filesystem for Samba, Window and other CIFS compliant servers)"
1595 depends on INET
1596 select NLS
1597 help
1598 This is the client VFS module for the Common Internet File System
1599 (CIFS) protocol which is the successor to the Server Message Block
1600 (SMB) protocol, the native file sharing mechanism for most early
1601 PC operating systems. The CIFS protocol is fully supported by
1602 file servers such as Windows 2000 (including Windows 2003, NT 4
1603 and Windows XP) as well by Samba (which provides excellent CIFS
ec58ef03
SF
1604 server support for Linux and many other operating systems). Limited
1605 support for Windows ME and similar servers is provided as well.
1606 You must use the smbfs client filesystem to access older SMB servers
1607 such as OS/2 and DOS.
1da177e4
LT
1608
1609 The intent of the cifs module is to provide an advanced
1610 network file system client for mounting to CIFS compliant servers,
1611 including support for dfs (hierarchical name space), secure per-user
1612 session establishment, safe distributed caching (oplock), optional
1613 packet signing, Unicode and other internationalization improvements,
1614 and optional Winbind (nsswitch) integration. You do not need to enable
1615 cifs if running only a (Samba) server. It is possible to enable both
1616 smbfs and cifs (e.g. if you are using CIFS for accessing Windows 2003
1617 and Samba 3 servers, and smbfs for accessing old servers). If you need
ec58ef03 1618 to mount to Samba or Windows from this machine, say Y.
1da177e4
LT
1619
1620config CIFS_STATS
1621 bool "CIFS statistics"
1622 depends on CIFS
1623 help
1624 Enabling this option will cause statistics for each server share
1625 mounted by the cifs client to be displayed in /proc/fs/cifs/Stats
1626
ec58ef03
SF
1627config CIFS_STATS2
1628 bool "CIFS extended statistics"
1629 depends on CIFS_STATS
1630 help
1631 Enabling this option will allow more detailed statistics on SMB
1632 request timing to be displayed in /proc/fs/cifs/DebugData and also
1633 allow optional logging of slow responses to dmesg (depending on the
1634 value of /proc/fs/cifs/cifsFYI, see fs/cifs/README for more details).
1635 These additional statistics may have a minor effect on performance
1636 and memory utilization.
1637
1638 Unless you are a developer or are doing network performance analysis
1639 or tuning, say N.
1640
1da177e4 1641config CIFS_XATTR
ec58ef03 1642 bool "CIFS extended attributes"
1da177e4
LT
1643 depends on CIFS
1644 help
1645 Extended attributes are name:value pairs associated with inodes by
1646 the kernel or by users (see the attr(5) manual page, or visit
1647 <http://acl.bestbits.at/> for details). CIFS maps the name of
1648 extended attributes beginning with the user namespace prefix
1649 to SMB/CIFS EAs. EAs are stored on Windows servers without the
1650 user namespace prefix, but their names are seen by Linux cifs clients
1651 prefaced by the user namespace prefix. The system namespace
1652 (used by some filesystems to store ACLs) is not supported at
1653 this time.
ec58ef03 1654
1da177e4
LT
1655 If unsure, say N.
1656
1657config CIFS_POSIX
ec58ef03 1658 bool "CIFS POSIX Extensions"
1da177e4
LT
1659 depends on CIFS_XATTR
1660 help
1661 Enabling this option will cause the cifs client to attempt to
1662 negotiate a newer dialect with servers, such as Samba 3.0.5
1663 or later, that optionally can handle more POSIX like (rather
1664 than Windows like) file behavior. It also enables
1665 support for POSIX ACLs (getfacl and setfacl) to servers
1666 (such as Samba 3.10 and later) which can negotiate
1667 CIFS POSIX ACL support. If unsure, say N.
1668
1669config CIFS_EXPERIMENTAL
1670 bool "CIFS Experimental Features (EXPERIMENTAL)"
cb9dbff9 1671 depends on CIFS && EXPERIMENTAL
1da177e4 1672 help
ec58ef03
SF
1673 Enables cifs features under testing. These features are
1674 experimental and currently include support for writepages
1675 (multipage writebehind performance improvements) and directory
1676 change notification ie fcntl(F_DNOTIFY) as well as some security
1677 improvements. Some also depend on setting at runtime the
1678 pseudo-file /proc/fs/cifs/Experimental (which is disabled by
1679 default). See the file fs/cifs/README for more details.
1680
1681 If unsure, say N.
1da177e4 1682
a2653eba
SF
1683config CIFS_UPCALL
1684 bool "CIFS Kerberos/SPNEGO advanced session setup (EXPERIMENTAL)"
1685 depends on CIFS_EXPERIMENTAL
1686 select CONNECTOR
1687 help
1688 Enables an upcall mechanism for CIFS which will be used to contact
1689 userspace helper utilities to provide SPNEGO packaged Kerberos
1690 tickets which are needed to mount to certain secure servers
1b397f4f
SF
1691 (for which more secure Kerberos authentication is required). If
1692 unsure, say N.
a2653eba 1693
1da177e4
LT
1694config NCP_FS
1695 tristate "NCP file system support (to mount NetWare volumes)"
1696 depends on IPX!=n || INET
1697 help
1698 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
1699 used by Novell NetWare clients to talk to file servers. It is to
1700 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
1701 to mount NetWare file server volumes and to access them just like
1702 any other Unix directory. For details, please read the file
1703 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
1704 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
1705
1706 You do not have to say Y here if you want your Linux box to act as a
1707 file *server* for Novell NetWare clients.
1708
1709 General information about how to connect Linux, Windows machines and
1710 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
1711
1712 To compile this as a module, choose M here: the module will be called
1713 ncpfs. Say N unless you are connected to a Novell network.
1714
1715source "fs/ncpfs/Kconfig"
1716
1717config CODA_FS
1718 tristate "Coda file system support (advanced network fs)"
1719 depends on INET
1720 help
1721 Coda is an advanced network file system, similar to NFS in that it
1722 enables you to mount file systems of a remote server and access them
1723 with regular Unix commands as if they were sitting on your hard
1724 disk. Coda has several advantages over NFS: support for
1725 disconnected operation (e.g. for laptops), read/write server
1726 replication, security model for authentication and encryption,
1727 persistent client caches and write back caching.
1728
1729 If you say Y here, your Linux box will be able to act as a Coda
1730 *client*. You will need user level code as well, both for the
1731 client and server. Servers are currently user level, i.e. they need
1732 no kernel support. Please read
1733 <file:Documentation/filesystems/coda.txt> and check out the Coda
1734 home page <http://www.coda.cs.cmu.edu/>.
1735
1736 To compile the coda client support as a module, choose M here: the
1737 module will be called coda.
1738
1739config CODA_FS_OLD_API
1740 bool "Use 96-bit Coda file identifiers"
1741 depends on CODA_FS
1742 help
1743 A new kernel-userspace API had to be introduced for Coda v6.0
1744 to support larger 128-bit file identifiers as needed by the
1745 new realms implementation.
1746
1747 However this new API is not backward compatible with older
1748 clients. If you really need to run the old Coda userspace
1749 cache manager then say Y.
1750
1751 For most cases you probably want to say N.
1752
1753config AFS_FS
1754# for fs/nls/Config.in
1755 tristate "Andrew File System support (AFS) (Experimental)"
1756 depends on INET && EXPERIMENTAL
1757 select RXRPC
1758 help
1759 If you say Y here, you will get an experimental Andrew File System
1760 driver. It currently only supports unsecured read-only AFS access.
1761
1762 See <file:Documentation/filesystems/afs.txt> for more intormation.
1763
1764 If unsure, say N.
1765
1766config RXRPC
1767 tristate
1768
93fa58cb
EVH
1769config 9P_FS
1770 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
1771 depends on INET && EXPERIMENTAL
1772 help
1773 If you say Y here, you will get experimental support for
1774 Plan 9 resource sharing via the 9P2000 protocol.
1775
1776 See <http://v9fs.sf.net> for more information.
1777
1778 If unsure, say N.
1779
1da177e4
LT
1780endmenu
1781
1782menu "Partition Types"
1783
1784source "fs/partitions/Kconfig"
1785
1786endmenu
1787
1788source "fs/nls/Kconfig"
1789
1790endmenu
1791