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"
217 source "fs/freevxfs/Kconfig"
218 source "fs/minix/Kconfig"
219 source "fs/omfs/Kconfig"
220 source "fs/hpfs/Kconfig"
223 tristate "QNX4 file system support (read only)"
226 This is the file system used by the real-time operating systems
227 QNX 4 and QNX 6 (the latter is also called QNX RTP).
228 Further information is available at <http://www.qnx.com/>.
229 Say Y if you intend to mount QNX hard disks or floppies.
230 Unless you say Y to "QNX4FS read-write support" below, you will
231 only be able to read these file systems.
233 To compile this file system support as a module, choose M here: the
234 module will be called qnx4.
236 If you don't know whether you need it, then you don't need it:
240 bool "QNX4FS write support (DANGEROUS)"
241 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
243 Say Y if you want to test write support for QNX4 file systems.
245 It's currently broken, so for now:
249 tristate "ROM file system support"
252 This is a very small read-only file system mainly intended for
253 initial ram disks of installation disks, but it could be used for
254 other read-only media as well. Read
255 <file:Documentation/filesystems/romfs.txt> for details.
257 To compile this file system support as a module, choose M here: the
258 module will be called romfs. Note that the file system of your
259 root partition (the one containing the directory /) cannot be a
262 If you don't know whether you need it, then you don't need it:
267 tristate "System V/Xenix/V7/Coherent file system support"
270 SCO, Xenix and Coherent are commercial Unix systems for Intel
271 machines, and Version 7 was used on the DEC PDP-11. Saying Y
272 here would allow you to read from their floppies and hard disk
275 If you have floppies or hard disk partitions like that, it is likely
276 that they contain binaries from those other Unix systems; in order
277 to run these binaries, you will want to install linux-abi which is
278 a set of kernel modules that lets you run SCO, Xenix, Wyse,
279 UnixWare, Dell Unix and System V programs under Linux. It is
280 available via FTP (user: ftp) from
281 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
282 NOTE: that will work only for binaries from Intel-based systems;
283 PDP ones will have to wait until somebody ports Linux to -11 ;-)
285 If you only intend to mount files from some other Unix over the
286 network using NFS, you don't need the System V file system support
287 (but you need NFS file system support obviously).
289 Note that this option is generally not needed for floppies, since a
290 good portable way to transport files and directories between unixes
291 (and even other operating systems) is given by the tar program ("man
292 tar" or preferably "info tar"). Note also that this option has
293 nothing whatsoever to do with the option "System V IPC". Read about
294 the System V file system in
295 <file:Documentation/filesystems/sysv-fs.txt>.
296 Saying Y here will enlarge your kernel by about 27 KB.
298 To compile this as a module, choose M here: the module will be called
301 If you haven't heard about all of this before, it's safe to say N.
305 tristate "UFS file system support (read only)"
308 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
309 OpenBSD and NeXTstep) use a file system called UFS. Some System V
310 Unixes can create and mount hard disk partitions and diskettes using
311 this file system as well. Saying Y here will allow you to read from
312 these partitions; if you also want to write to them, say Y to the
313 experimental "UFS file system write support", below. Please read the
314 file <file:Documentation/filesystems/ufs.txt> for more information.
316 The recently released UFS2 variant (used in FreeBSD 5.x) is
319 Note that this option is generally not needed for floppies, since a
320 good portable way to transport files and directories between unixes
321 (and even other operating systems) is given by the tar program ("man
322 tar" or preferably "info tar").
324 When accessing NeXTstep files, you may need to convert them from the
325 NeXT character set to the Latin1 character set; use the program
326 recode ("info recode") for this purpose.
328 To compile the UFS file system support as a module, choose M here: the
329 module will be called ufs.
331 If you haven't heard about all of this before, it's safe to say N.
334 bool "UFS file system write support (DANGEROUS)"
335 depends on UFS_FS && EXPERIMENTAL
337 Say Y here if you want to try writing to UFS partitions. This is
338 experimental, so you should back up your UFS partitions beforehand.
344 If you are experiencing any problems with the UFS filesystem, say
345 Y here. This will result in _many_ additional debugging messages to be
346 written to the system log.
348 endif # MISC_FILESYSTEMS
350 menuconfig NETWORK_FILESYSTEMS
351 bool "Network File Systems"
355 Say Y here to get to see options for network filesystems and
356 filesystem-related networking code, such as NFS daemon and
357 RPCSEC security modules.
359 This option alone does not add any kernel code.
361 If you say N, all options in this submenu will be skipped and
362 disabled; if unsure, say Y here.
364 if NETWORK_FILESYSTEMS
367 tristate "NFS client support"
371 select NFS_ACL_SUPPORT if NFS_V3_ACL
373 Choose Y here if you want to access files residing on other
374 computers using Sun's Network File System protocol. To compile
375 this file system support as a module, choose M here: the module
378 To mount file systems exported by NFS servers, you also need to
379 install the user space mount.nfs command which can be found in
380 the Linux nfs-utils package, available from http://linux-nfs.org/.
381 Information about using the mount command is available in the
382 mount(8) man page. More detail about the Linux NFS client
383 implementation is available via the nfs(5) man page.
385 Below you can choose which versions of the NFS protocol are
386 available in the kernel to mount NFS servers. Support for NFS
387 version 2 (RFC 1094) is always available when NFS_FS is selected.
389 To configure a system which mounts its root file system via NFS
390 at boot time, say Y here, select "Kernel level IP
391 autoconfiguration" in the NETWORK menu, and select "Root file
392 system on NFS" below. You cannot compile this file system as a
398 bool "NFS client support for NFS version 3"
401 This option enables support for version 3 of the NFS protocol
402 (RFC 1813) in the kernel's NFS client.
407 bool "NFS client support for the NFSv3 ACL protocol extension"
410 Some NFS servers support an auxiliary NFSv3 ACL protocol that
411 Sun added to Solaris but never became an official part of the
412 NFS version 3 protocol. This protocol extension allows
413 applications on NFS clients to manipulate POSIX Access Control
414 Lists on files residing on NFS servers. NFS servers enforce
415 ACLs on local files whether this protocol is available or not.
417 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
418 protocol extension and you want your NFS client to allow
419 applications to access and modify ACLs on files on the server.
421 Most NFS servers don't support the Solaris NFSv3 ACL protocol
422 extension. You can choose N here or specify the "noacl" mount
423 option to prevent your NFS client from trying to use the NFSv3
429 bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
430 depends on NFS_FS && EXPERIMENTAL
431 select RPCSEC_GSS_KRB5
433 This option enables support for version 4 of the NFS protocol
434 (RFC 3530) in the kernel's NFS client.
436 To mount NFS servers using NFSv4, you also need to install user
437 space programs which can be found in the Linux nfs-utils package,
438 available from http://linux-nfs.org/.
443 bool "Root file system on NFS"
444 depends on NFS_FS=y && IP_PNP
446 If you want your system to mount its root file system via NFS,
447 choose Y here. This is common practice for managing systems
448 without local permanent storage. For details, read
449 <file:Documentation/filesystems/nfsroot.txt>.
451 Most people say N here.
454 tristate "NFS server support"
459 select NFS_ACL_SUPPORT if NFSD_V2_ACL
461 Choose Y here if you want to allow other computers to access
462 files residing on this system using Sun's Network File System
463 protocol. To compile the NFS server support as a module,
464 choose M here: the module will be called nfsd.
466 You may choose to use a user-space NFS server instead, in which
467 case you can choose N here.
469 To export local file systems using NFS, you also need to install
470 user space programs which can be found in the Linux nfs-utils
471 package, available from http://linux-nfs.org/. More detail about
472 the Linux NFS server implementation is available via the
475 Below you can choose which versions of the NFS protocol are
476 available to clients mounting the NFS server on this system.
477 Support for NFS version 2 (RFC 1094) is always available when
478 CONFIG_NFSD is selected.
487 bool "NFS server support for NFS version 3"
490 This option enables support in your system's NFS server for
491 version 3 of the NFS protocol (RFC 1813).
496 bool "NFS server support for the NFSv3 ACL protocol extension"
500 Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
501 never became an official part of the NFS version 3 protocol.
502 This protocol extension allows applications on NFS clients to
503 manipulate POSIX Access Control Lists on files residing on NFS
504 servers. NFS servers enforce POSIX ACLs on local files whether
505 this protocol is available or not.
507 This option enables support in your system's NFS server for the
508 NFSv3 ACL protocol extension allowing NFS clients to manipulate
509 POSIX ACLs on files exported by your system's NFS server. NFS
510 clients which support the Solaris NFSv3 ACL protocol can then
511 access and modify ACLs on your NFS server.
513 To store ACLs on your NFS server, you also need to enable ACL-
514 related CONFIG options for your local file systems of choice.
519 bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
520 depends on NFSD && PROC_FS && EXPERIMENTAL
523 select RPCSEC_GSS_KRB5
525 This option enables support in your system's NFS server for
526 version 4 of the NFS protocol (RFC 3530).
528 To export files using NFSv4, you need to install additional user
529 space programs which can be found in the Linux nfs-utils package,
530 available from http://linux-nfs.org/.
539 depends on NFSD_V3 || NFS_V3
545 config NFS_ACL_SUPPORT
551 depends on NFSD || NFS_FS
560 config SUNRPC_XPRT_RDMA
562 depends on SUNRPC && INFINIBAND && EXPERIMENTAL
563 default SUNRPC && INFINIBAND
565 This option enables an RPC client transport capability that
566 allows the NFS client to mount servers via an RDMA-enabled
569 To compile RPC client RDMA transport support as a module,
570 choose M here: the module will be called xprtrdma.
574 config SUNRPC_REGISTER_V4
575 bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
576 depends on SUNRPC && EXPERIMENTAL
579 Sun added support for registering RPC services at an IPv6
580 address by creating two new versions of the rpcbind protocol
583 This option enables support in the kernel RPC server for
584 registering kernel RPC services via version 4 of the rpcbind
585 protocol. If you enable this option, you must run a portmapper
586 daemon that supports rpcbind protocol version 4.
588 Serving NFS over IPv6 from knfsd (the kernel's NFS server)
589 requires that you enable this option and use a portmapper that
590 supports rpcbind version 4.
592 If unsure, say N to get traditional behavior (register kernel
593 RPC services using only rpcbind version 2). Distributions
594 using the legacy Linux portmapper daemon must say N here.
596 config RPCSEC_GSS_KRB5
597 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
598 depends on SUNRPC && EXPERIMENTAL
605 Choose Y here to enable Secure RPC using the Kerberos version 5
606 GSS-API mechanism (RFC 1964).
608 Secure RPC calls with Kerberos require an auxiliary user-space
609 daemon which may be found in the Linux nfs-utils package
610 available from http://linux-nfs.org/. In addition, user-space
611 Kerberos support should be installed.
615 config RPCSEC_GSS_SPKM3
616 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
617 depends on SUNRPC && EXPERIMENTAL
625 Choose Y here to enable Secure RPC using the SPKM3 public key
626 GSS-API mechansim (RFC 2025).
628 Secure RPC calls with SPKM3 require an auxiliary userspace
629 daemon which may be found in the Linux nfs-utils package
630 available from http://linux-nfs.org/.
635 tristate "SMB file system support (OBSOLETE, please use CIFS)"
639 SMB (Server Message Block) is the protocol Windows for Workgroups
640 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
641 files and printers over local networks. Saying Y here allows you to
642 mount their file systems (often called "shares" in this context) and
643 access them just like any other Unix directory. Currently, this
644 works only if the Windows machines use TCP/IP as the underlying
645 transport protocol, and not NetBEUI. For details, read
646 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
647 available from <http://www.tldp.org/docs.html#howto>.
649 Note: if you just want your box to act as an SMB *server* and make
650 files and printing services available to Windows clients (which need
651 to have a TCP/IP stack), you don't need to say Y here; you can use
652 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
655 General information about how to connect Linux, Windows machines and
656 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
658 To compile the SMB support as a module, choose M here:
659 the module will be called smbfs. Most people say N, however.
661 config SMB_NLS_DEFAULT
662 bool "Use a default NLS"
665 Enabling this will make smbfs use nls translations by default. You
666 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
667 settings and you need to give the default nls for the SMB server as
668 CONFIG_SMB_NLS_REMOTE.
670 The nls settings can be changed at mount time, if your smbmount
671 supports that, using the codepage and iocharset parameters.
673 smbmount from samba 2.2.0 or later supports this.
675 config SMB_NLS_REMOTE
676 string "Default Remote NLS Option"
677 depends on SMB_NLS_DEFAULT
680 This setting allows you to specify a default value for which
681 codepage the server uses. If this field is left blank no
682 translations will be done by default. The local codepage/charset
683 default to CONFIG_NLS_DEFAULT.
685 The nls settings can be changed at mount time, if your smbmount
686 supports that, using the codepage and iocharset parameters.
688 smbmount from samba 2.2.0 or later supports this.
690 source "fs/cifs/Kconfig"
693 tristate "NCP file system support (to mount NetWare volumes)"
694 depends on IPX!=n || INET
696 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
697 used by Novell NetWare clients to talk to file servers. It is to
698 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
699 to mount NetWare file server volumes and to access them just like
700 any other Unix directory. For details, please read the file
701 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
702 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
704 You do not have to say Y here if you want your Linux box to act as a
705 file *server* for Novell NetWare clients.
707 General information about how to connect Linux, Windows machines and
708 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
710 To compile this as a module, choose M here: the module will be called
711 ncpfs. Say N unless you are connected to a Novell network.
713 source "fs/ncpfs/Kconfig"
716 tristate "Coda file system support (advanced network fs)"
719 Coda is an advanced network file system, similar to NFS in that it
720 enables you to mount file systems of a remote server and access them
721 with regular Unix commands as if they were sitting on your hard
722 disk. Coda has several advantages over NFS: support for
723 disconnected operation (e.g. for laptops), read/write server
724 replication, security model for authentication and encryption,
725 persistent client caches and write back caching.
727 If you say Y here, your Linux box will be able to act as a Coda
728 *client*. You will need user level code as well, both for the
729 client and server. Servers are currently user level, i.e. they need
730 no kernel support. Please read
731 <file:Documentation/filesystems/coda.txt> and check out the Coda
732 home page <http://www.coda.cs.cmu.edu/>.
734 To compile the coda client support as a module, choose M here: the
735 module will be called coda.
738 tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
739 depends on INET && EXPERIMENTAL
742 If you say Y here, you will get an experimental Andrew File System
743 driver. It currently only supports unsecured read-only AFS access.
745 See <file:Documentation/filesystems/afs.txt> for more information.
750 bool "AFS dynamic debugging"
753 Say Y here to make runtime controllable debugging messages appear.
755 See <file:Documentation/filesystems/afs.txt> for more information.
760 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
761 depends on INET && NET_9P && EXPERIMENTAL
763 If you say Y here, you will get experimental support for
764 Plan 9 resource sharing via the 9P2000 protocol.
766 See <http://v9fs.sf.net> for more information.
770 endif # NETWORK_FILESYSTEMS
773 menu "Partition Types"
775 source "fs/partitions/Kconfig"
780 source "fs/nls/Kconfig"
781 source "fs/dlm/Kconfig"