2 # File system configuration
9 source "fs/ext2/Kconfig"
10 source "fs/ext3/Kconfig"
11 source "fs/ext4/Kconfig"
16 depends on EXT2_FS_XIP
19 source "fs/jbd/Kconfig"
20 source "fs/jbd2/Kconfig"
23 # Meta block cache for Extended Attributes (ext2/ext3/ext4)
25 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
30 source "fs/reiserfs/Kconfig"
31 source "fs/jfs/Kconfig"
34 # Posix ACL utility routines (for now, only ext2/ext3/jfs/reiserfs/nfs4)
36 # NOTE: you can implement Posix ACLs without these helpers (XFS does).
37 # Never use this symbol for ifdefs.
43 bool "Enable POSIX file locking API" if EMBEDDED
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.
50 source "fs/xfs/Kconfig"
51 source "fs/gfs2/Kconfig"
52 source "fs/ocfs2/Kconfig"
53 source "fs/btrfs/Kconfig"
57 source "fs/notify/Kconfig"
62 If you say Y here, you will be able to set per user limits for disk
63 usage (also called disk quotas). Currently, it works for the
64 ext2, ext3, and reiserfs file system. ext3 also supports journalled
65 quotas for which you don't need to run quotacheck(8) after an unclean
67 For further details, read the Quota mini-HOWTO, available from
68 <http://www.tldp.org/docs.html#howto>, or the documentation provided
69 with the quota tools. Probably the quota support is only useful for
70 multi user systems. If unsure, say N.
72 config QUOTA_NETLINK_INTERFACE
73 bool "Report quota messages through netlink interface"
74 depends on QUOTA && NET
76 If you say Y here, quota warnings (about exceeding softlimit, reaching
77 hardlimit, etc.) will be reported through netlink interface. If unsure,
80 config PRINT_QUOTA_WARNING
81 bool "Print quota warnings to console (OBSOLETE)"
85 If you say Y here, quota warnings (about exceeding softlimit, reaching
86 hardlimit, etc.) will be printed to the process' controlling terminal.
87 Note that this behavior is currently deprecated and may go away in
88 future. Please use notification via netlink socket instead.
90 # Generic support for tree structured quota files. Seleted when needed.
95 tristate "Old quota format support"
98 This quota format was (is) used by kernels earlier than 2.4.22. If
99 you have quota working and you don't want to convert to new quota
103 tristate "Quota format v2 support"
107 This quota format allows using quotas with 32-bit UIDs/GIDs. If you
108 need this functionality say Y here.
112 depends on XFS_QUOTA || QUOTA
115 source "fs/autofs/Kconfig"
116 source "fs/autofs4/Kconfig"
117 source "fs/fuse/Kconfig"
124 menu "CD-ROM/DVD Filesystems"
126 source "fs/isofs/Kconfig"
127 source "fs/udf/Kconfig"
133 menu "DOS/FAT/NT Filesystems"
135 source "fs/fat/Kconfig"
136 source "fs/ntfs/Kconfig"
141 menu "Pseudo filesystems"
143 source "fs/proc/Kconfig"
144 source "fs/sysfs/Kconfig"
147 bool "Virtual memory file system support (former shm fs)"
149 Tmpfs is a file system which keeps all files in virtual memory.
151 Everything in tmpfs is temporary in the sense that no files will be
152 created on your hard drive. The files live in memory and swap
153 space. If you unmount a tmpfs instance, everything stored therein is
156 See <file:Documentation/filesystems/tmpfs.txt> for details.
158 config TMPFS_POSIX_ACL
159 bool "Tmpfs POSIX Access Control Lists"
163 POSIX Access Control Lists (ACLs) support permissions for users and
164 groups beyond the owner/group/world scheme.
166 To learn more about Access Control Lists, visit the POSIX ACLs for
167 Linux website <http://acl.bestbits.at/>.
169 If you don't know what Access Control Lists are, say N.
172 bool "HugeTLB file system support"
173 depends on X86 || IA64 || PPC64 || SPARC64 || (SUPERH && MMU) || \
174 (S390 && 64BIT) || BROKEN
176 hugetlbfs is a filesystem backing for HugeTLB pages, based on
177 ramfs. For architectures that support it, say Y here and read
178 <file:Documentation/vm/hugetlbpage.txt> for details.
185 source "fs/configfs/Kconfig"
189 menuconfig MISC_FILESYSTEMS
190 bool "Miscellaneous filesystems"
193 Say Y here to get to see options for various miscellaneous
194 filesystems, such as filesystems that came from other
197 This option alone does not add any kernel code.
199 If you say N, all options in this submenu will be skipped and
200 disabled; if unsure, say Y here.
204 source "fs/adfs/Kconfig"
205 source "fs/affs/Kconfig"
206 source "fs/ecryptfs/Kconfig"
207 source "fs/hfs/Kconfig"
208 source "fs/hfsplus/Kconfig"
209 source "fs/befs/Kconfig"
210 source "fs/bfs/Kconfig"
211 source "fs/efs/Kconfig"
212 source "fs/jffs2/Kconfig"
213 # UBIFS File system configuration
214 source "fs/ubifs/Kconfig"
215 source "fs/cramfs/Kconfig"
216 source "fs/squashfs/Kconfig"
219 tristate "FreeVxFS file system support (VERITAS VxFS(TM) compatible)"
222 FreeVxFS is a file system driver that support the VERITAS VxFS(TM)
223 file system format. VERITAS VxFS(TM) is the standard file system
224 of SCO UnixWare (and possibly others) and optionally available
225 for Sunsoft Solaris, HP-UX and many other operating systems.
226 Currently only readonly access is supported.
228 NOTE: the file system type as used by mount(1), mount(2) and
229 fstab(5) is 'vxfs' as it describes the file system format, not
232 To compile this as a module, choose M here: the module will be
233 called freevxfs. If unsure, say N.
236 tristate "Minix file system support"
239 Minix is a simple operating system used in many classes about OS's.
240 The minix file system (method to organize files on a hard disk
241 partition or a floppy disk) was the original file system for Linux,
242 but has been superseded by the second extended file system ext2fs.
243 You don't want to use the minix file system on your hard disk
244 because of certain built-in restrictions, but it is sometimes found
245 on older Linux floppy disks. This option will enlarge your kernel
246 by about 28 KB. If unsure, say N.
248 To compile this file system support as a module, choose M here: the
249 module will be called minix. Note that the file system of your root
250 partition (the one containing the directory /) cannot be compiled as
254 tristate "SonicBlue Optimized MPEG File System support"
258 This is the proprietary file system used by the Rio Karma music
259 player and ReplayTV DVR. Despite the name, this filesystem is not
260 more efficient than a standard FS for MPEG files, in fact likely
261 the opposite is true. Say Y if you have either of these devices
262 and wish to mount its disk.
264 To compile this file system support as a module, choose M here: the
265 module will be called omfs. If unsure, say N.
268 tristate "OS/2 HPFS file system support"
271 OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
272 is the file system used for organizing files on OS/2 hard disk
273 partitions. Say Y if you want to be able to read files from and
274 write files to an OS/2 HPFS partition on your hard drive. OS/2
275 floppies however are in regular MSDOS format, so you don't need this
276 option in order to be able to read them. Read
277 <file:Documentation/filesystems/hpfs.txt>.
279 To compile this file system support as a module, choose M here: the
280 module will be called hpfs. If unsure, say N.
284 tristate "QNX4 file system support (read only)"
287 This is the file system used by the real-time operating systems
288 QNX 4 and QNX 6 (the latter is also called QNX RTP).
289 Further information is available at <http://www.qnx.com/>.
290 Say Y if you intend to mount QNX hard disks or floppies.
291 Unless you say Y to "QNX4FS read-write support" below, you will
292 only be able to read these file systems.
294 To compile this file system support as a module, choose M here: the
295 module will be called qnx4.
297 If you don't know whether you need it, then you don't need it:
301 bool "QNX4FS write support (DANGEROUS)"
302 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
304 Say Y if you want to test write support for QNX4 file systems.
306 It's currently broken, so for now:
310 tristate "ROM file system support"
313 This is a very small read-only file system mainly intended for
314 initial ram disks of installation disks, but it could be used for
315 other read-only media as well. Read
316 <file:Documentation/filesystems/romfs.txt> for details.
318 To compile this file system support as a module, choose M here: the
319 module will be called romfs. Note that the file system of your
320 root partition (the one containing the directory /) cannot be a
323 If you don't know whether you need it, then you don't need it:
328 tristate "System V/Xenix/V7/Coherent file system support"
331 SCO, Xenix and Coherent are commercial Unix systems for Intel
332 machines, and Version 7 was used on the DEC PDP-11. Saying Y
333 here would allow you to read from their floppies and hard disk
336 If you have floppies or hard disk partitions like that, it is likely
337 that they contain binaries from those other Unix systems; in order
338 to run these binaries, you will want to install linux-abi which is
339 a set of kernel modules that lets you run SCO, Xenix, Wyse,
340 UnixWare, Dell Unix and System V programs under Linux. It is
341 available via FTP (user: ftp) from
342 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
343 NOTE: that will work only for binaries from Intel-based systems;
344 PDP ones will have to wait until somebody ports Linux to -11 ;-)
346 If you only intend to mount files from some other Unix over the
347 network using NFS, you don't need the System V file system support
348 (but you need NFS file system support obviously).
350 Note that this option is generally not needed for floppies, since a
351 good portable way to transport files and directories between unixes
352 (and even other operating systems) is given by the tar program ("man
353 tar" or preferably "info tar"). Note also that this option has
354 nothing whatsoever to do with the option "System V IPC". Read about
355 the System V file system in
356 <file:Documentation/filesystems/sysv-fs.txt>.
357 Saying Y here will enlarge your kernel by about 27 KB.
359 To compile this as a module, choose M here: the module will be called
362 If you haven't heard about all of this before, it's safe to say N.
366 tristate "UFS file system support (read only)"
369 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
370 OpenBSD and NeXTstep) use a file system called UFS. Some System V
371 Unixes can create and mount hard disk partitions and diskettes using
372 this file system as well. Saying Y here will allow you to read from
373 these partitions; if you also want to write to them, say Y to the
374 experimental "UFS file system write support", below. Please read the
375 file <file:Documentation/filesystems/ufs.txt> for more information.
377 The recently released UFS2 variant (used in FreeBSD 5.x) is
380 Note that this option is generally not needed for floppies, since a
381 good portable way to transport files and directories between unixes
382 (and even other operating systems) is given by the tar program ("man
383 tar" or preferably "info tar").
385 When accessing NeXTstep files, you may need to convert them from the
386 NeXT character set to the Latin1 character set; use the program
387 recode ("info recode") for this purpose.
389 To compile the UFS file system support as a module, choose M here: the
390 module will be called ufs.
392 If you haven't heard about all of this before, it's safe to say N.
395 bool "UFS file system write support (DANGEROUS)"
396 depends on UFS_FS && EXPERIMENTAL
398 Say Y here if you want to try writing to UFS partitions. This is
399 experimental, so you should back up your UFS partitions beforehand.
405 If you are experiencing any problems with the UFS filesystem, say
406 Y here. This will result in _many_ additional debugging messages to be
407 written to the system log.
409 endif # MISC_FILESYSTEMS
411 menuconfig NETWORK_FILESYSTEMS
412 bool "Network File Systems"
416 Say Y here to get to see options for network filesystems and
417 filesystem-related networking code, such as NFS daemon and
418 RPCSEC security modules.
420 This option alone does not add any kernel code.
422 If you say N, all options in this submenu will be skipped and
423 disabled; if unsure, say Y here.
425 if NETWORK_FILESYSTEMS
428 tristate "NFS client support"
432 select NFS_ACL_SUPPORT if NFS_V3_ACL
434 Choose Y here if you want to access files residing on other
435 computers using Sun's Network File System protocol. To compile
436 this file system support as a module, choose M here: the module
439 To mount file systems exported by NFS servers, you also need to
440 install the user space mount.nfs command which can be found in
441 the Linux nfs-utils package, available from http://linux-nfs.org/.
442 Information about using the mount command is available in the
443 mount(8) man page. More detail about the Linux NFS client
444 implementation is available via the nfs(5) man page.
446 Below you can choose which versions of the NFS protocol are
447 available in the kernel to mount NFS servers. Support for NFS
448 version 2 (RFC 1094) is always available when NFS_FS is selected.
450 To configure a system which mounts its root file system via NFS
451 at boot time, say Y here, select "Kernel level IP
452 autoconfiguration" in the NETWORK menu, and select "Root file
453 system on NFS" below. You cannot compile this file system as a
459 bool "NFS client support for NFS version 3"
462 This option enables support for version 3 of the NFS protocol
463 (RFC 1813) in the kernel's NFS client.
468 bool "NFS client support for the NFSv3 ACL protocol extension"
471 Some NFS servers support an auxiliary NFSv3 ACL protocol that
472 Sun added to Solaris but never became an official part of the
473 NFS version 3 protocol. This protocol extension allows
474 applications on NFS clients to manipulate POSIX Access Control
475 Lists on files residing on NFS servers. NFS servers enforce
476 ACLs on local files whether this protocol is available or not.
478 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
479 protocol extension and you want your NFS client to allow
480 applications to access and modify ACLs on files on the server.
482 Most NFS servers don't support the Solaris NFSv3 ACL protocol
483 extension. You can choose N here or specify the "noacl" mount
484 option to prevent your NFS client from trying to use the NFSv3
490 bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
491 depends on NFS_FS && EXPERIMENTAL
492 select RPCSEC_GSS_KRB5
494 This option enables support for version 4 of the NFS protocol
495 (RFC 3530) in the kernel's NFS client.
497 To mount NFS servers using NFSv4, you also need to install user
498 space programs which can be found in the Linux nfs-utils package,
499 available from http://linux-nfs.org/.
504 bool "Root file system on NFS"
505 depends on NFS_FS=y && IP_PNP
507 If you want your system to mount its root file system via NFS,
508 choose Y here. This is common practice for managing systems
509 without local permanent storage. For details, read
510 <file:Documentation/filesystems/nfsroot.txt>.
512 Most people say N here.
515 tristate "NFS server support"
520 select NFS_ACL_SUPPORT if NFSD_V2_ACL
522 Choose Y here if you want to allow other computers to access
523 files residing on this system using Sun's Network File System
524 protocol. To compile the NFS server support as a module,
525 choose M here: the module will be called nfsd.
527 You may choose to use a user-space NFS server instead, in which
528 case you can choose N here.
530 To export local file systems using NFS, you also need to install
531 user space programs which can be found in the Linux nfs-utils
532 package, available from http://linux-nfs.org/. More detail about
533 the Linux NFS server implementation is available via the
536 Below you can choose which versions of the NFS protocol are
537 available to clients mounting the NFS server on this system.
538 Support for NFS version 2 (RFC 1094) is always available when
539 CONFIG_NFSD is selected.
548 bool "NFS server support for NFS version 3"
551 This option enables support in your system's NFS server for
552 version 3 of the NFS protocol (RFC 1813).
557 bool "NFS server support for the NFSv3 ACL protocol extension"
561 Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
562 never became an official part of the NFS version 3 protocol.
563 This protocol extension allows applications on NFS clients to
564 manipulate POSIX Access Control Lists on files residing on NFS
565 servers. NFS servers enforce POSIX ACLs on local files whether
566 this protocol is available or not.
568 This option enables support in your system's NFS server for the
569 NFSv3 ACL protocol extension allowing NFS clients to manipulate
570 POSIX ACLs on files exported by your system's NFS server. NFS
571 clients which support the Solaris NFSv3 ACL protocol can then
572 access and modify ACLs on your NFS server.
574 To store ACLs on your NFS server, you also need to enable ACL-
575 related CONFIG options for your local file systems of choice.
580 bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
581 depends on NFSD && PROC_FS && EXPERIMENTAL
584 select RPCSEC_GSS_KRB5
586 This option enables support in your system's NFS server for
587 version 4 of the NFS protocol (RFC 3530).
589 To export files using NFSv4, you need to install additional user
590 space programs which can be found in the Linux nfs-utils package,
591 available from http://linux-nfs.org/.
600 depends on NFSD_V3 || NFS_V3
606 config NFS_ACL_SUPPORT
612 depends on NFSD || NFS_FS
621 config SUNRPC_XPRT_RDMA
623 depends on SUNRPC && INFINIBAND && EXPERIMENTAL
624 default SUNRPC && INFINIBAND
626 This option enables an RPC client transport capability that
627 allows the NFS client to mount servers via an RDMA-enabled
630 To compile RPC client RDMA transport support as a module,
631 choose M here: the module will be called xprtrdma.
635 config SUNRPC_REGISTER_V4
636 bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
637 depends on SUNRPC && EXPERIMENTAL
640 Sun added support for registering RPC services at an IPv6
641 address by creating two new versions of the rpcbind protocol
644 This option enables support in the kernel RPC server for
645 registering kernel RPC services via version 4 of the rpcbind
646 protocol. If you enable this option, you must run a portmapper
647 daemon that supports rpcbind protocol version 4.
649 Serving NFS over IPv6 from knfsd (the kernel's NFS server)
650 requires that you enable this option and use a portmapper that
651 supports rpcbind version 4.
653 If unsure, say N to get traditional behavior (register kernel
654 RPC services using only rpcbind version 2). Distributions
655 using the legacy Linux portmapper daemon must say N here.
657 config RPCSEC_GSS_KRB5
658 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
659 depends on SUNRPC && EXPERIMENTAL
666 Choose Y here to enable Secure RPC using the Kerberos version 5
667 GSS-API mechanism (RFC 1964).
669 Secure RPC calls with Kerberos require an auxiliary user-space
670 daemon which may be found in the Linux nfs-utils package
671 available from http://linux-nfs.org/. In addition, user-space
672 Kerberos support should be installed.
676 config RPCSEC_GSS_SPKM3
677 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
678 depends on SUNRPC && EXPERIMENTAL
686 Choose Y here to enable Secure RPC using the SPKM3 public key
687 GSS-API mechansim (RFC 2025).
689 Secure RPC calls with SPKM3 require an auxiliary userspace
690 daemon which may be found in the Linux nfs-utils package
691 available from http://linux-nfs.org/.
696 tristate "SMB file system support (OBSOLETE, please use CIFS)"
700 SMB (Server Message Block) is the protocol Windows for Workgroups
701 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
702 files and printers over local networks. Saying Y here allows you to
703 mount their file systems (often called "shares" in this context) and
704 access them just like any other Unix directory. Currently, this
705 works only if the Windows machines use TCP/IP as the underlying
706 transport protocol, and not NetBEUI. For details, read
707 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
708 available from <http://www.tldp.org/docs.html#howto>.
710 Note: if you just want your box to act as an SMB *server* and make
711 files and printing services available to Windows clients (which need
712 to have a TCP/IP stack), you don't need to say Y here; you can use
713 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
716 General information about how to connect Linux, Windows machines and
717 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
719 To compile the SMB support as a module, choose M here:
720 the module will be called smbfs. Most people say N, however.
722 config SMB_NLS_DEFAULT
723 bool "Use a default NLS"
726 Enabling this will make smbfs use nls translations by default. You
727 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
728 settings and you need to give the default nls for the SMB server as
729 CONFIG_SMB_NLS_REMOTE.
731 The nls settings can be changed at mount time, if your smbmount
732 supports that, using the codepage and iocharset parameters.
734 smbmount from samba 2.2.0 or later supports this.
736 config SMB_NLS_REMOTE
737 string "Default Remote NLS Option"
738 depends on SMB_NLS_DEFAULT
741 This setting allows you to specify a default value for which
742 codepage the server uses. If this field is left blank no
743 translations will be done by default. The local codepage/charset
744 default to CONFIG_NLS_DEFAULT.
746 The nls settings can be changed at mount time, if your smbmount
747 supports that, using the codepage and iocharset parameters.
749 smbmount from samba 2.2.0 or later supports this.
751 source "fs/cifs/Kconfig"
754 tristate "NCP file system support (to mount NetWare volumes)"
755 depends on IPX!=n || INET
757 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
758 used by Novell NetWare clients to talk to file servers. It is to
759 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
760 to mount NetWare file server volumes and to access them just like
761 any other Unix directory. For details, please read the file
762 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
763 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
765 You do not have to say Y here if you want your Linux box to act as a
766 file *server* for Novell NetWare clients.
768 General information about how to connect Linux, Windows machines and
769 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
771 To compile this as a module, choose M here: the module will be called
772 ncpfs. Say N unless you are connected to a Novell network.
774 source "fs/ncpfs/Kconfig"
777 tristate "Coda file system support (advanced network fs)"
780 Coda is an advanced network file system, similar to NFS in that it
781 enables you to mount file systems of a remote server and access them
782 with regular Unix commands as if they were sitting on your hard
783 disk. Coda has several advantages over NFS: support for
784 disconnected operation (e.g. for laptops), read/write server
785 replication, security model for authentication and encryption,
786 persistent client caches and write back caching.
788 If you say Y here, your Linux box will be able to act as a Coda
789 *client*. You will need user level code as well, both for the
790 client and server. Servers are currently user level, i.e. they need
791 no kernel support. Please read
792 <file:Documentation/filesystems/coda.txt> and check out the Coda
793 home page <http://www.coda.cs.cmu.edu/>.
795 To compile the coda client support as a module, choose M here: the
796 module will be called coda.
799 tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
800 depends on INET && EXPERIMENTAL
803 If you say Y here, you will get an experimental Andrew File System
804 driver. It currently only supports unsecured read-only AFS access.
806 See <file:Documentation/filesystems/afs.txt> for more information.
811 bool "AFS dynamic debugging"
814 Say Y here to make runtime controllable debugging messages appear.
816 See <file:Documentation/filesystems/afs.txt> for more information.
821 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
822 depends on INET && NET_9P && EXPERIMENTAL
824 If you say Y here, you will get experimental support for
825 Plan 9 resource sharing via the 9P2000 protocol.
827 See <http://v9fs.sf.net> for more information.
831 endif # NETWORK_FILESYSTEMS
834 menu "Partition Types"
836 source "fs/partitions/Kconfig"
841 source "fs/nls/Kconfig"
842 source "fs/dlm/Kconfig"