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"
220 tristate "Minix file system support"
223 Minix is a simple operating system used in many classes about OS's.
224 The minix file system (method to organize files on a hard disk
225 partition or a floppy disk) was the original file system for Linux,
226 but has been superseded by the second extended file system ext2fs.
227 You don't want to use the minix file system on your hard disk
228 because of certain built-in restrictions, but it is sometimes found
229 on older Linux floppy disks. This option will enlarge your kernel
230 by about 28 KB. If unsure, say N.
232 To compile this file system support as a module, choose M here: the
233 module will be called minix. Note that the file system of your root
234 partition (the one containing the directory /) cannot be compiled as
238 tristate "SonicBlue Optimized MPEG File System support"
242 This is the proprietary file system used by the Rio Karma music
243 player and ReplayTV DVR. Despite the name, this filesystem is not
244 more efficient than a standard FS for MPEG files, in fact likely
245 the opposite is true. Say Y if you have either of these devices
246 and wish to mount its disk.
248 To compile this file system support as a module, choose M here: the
249 module will be called omfs. If unsure, say N.
252 tristate "OS/2 HPFS file system support"
255 OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
256 is the file system used for organizing files on OS/2 hard disk
257 partitions. Say Y if you want to be able to read files from and
258 write files to an OS/2 HPFS partition on your hard drive. OS/2
259 floppies however are in regular MSDOS format, so you don't need this
260 option in order to be able to read them. Read
261 <file:Documentation/filesystems/hpfs.txt>.
263 To compile this file system support as a module, choose M here: the
264 module will be called hpfs. If unsure, say N.
268 tristate "QNX4 file system support (read only)"
271 This is the file system used by the real-time operating systems
272 QNX 4 and QNX 6 (the latter is also called QNX RTP).
273 Further information is available at <http://www.qnx.com/>.
274 Say Y if you intend to mount QNX hard disks or floppies.
275 Unless you say Y to "QNX4FS read-write support" below, you will
276 only be able to read these file systems.
278 To compile this file system support as a module, choose M here: the
279 module will be called qnx4.
281 If you don't know whether you need it, then you don't need it:
285 bool "QNX4FS write support (DANGEROUS)"
286 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
288 Say Y if you want to test write support for QNX4 file systems.
290 It's currently broken, so for now:
294 tristate "ROM file system support"
297 This is a very small read-only file system mainly intended for
298 initial ram disks of installation disks, but it could be used for
299 other read-only media as well. Read
300 <file:Documentation/filesystems/romfs.txt> for details.
302 To compile this file system support as a module, choose M here: the
303 module will be called romfs. Note that the file system of your
304 root partition (the one containing the directory /) cannot be a
307 If you don't know whether you need it, then you don't need it:
312 tristate "System V/Xenix/V7/Coherent file system support"
315 SCO, Xenix and Coherent are commercial Unix systems for Intel
316 machines, and Version 7 was used on the DEC PDP-11. Saying Y
317 here would allow you to read from their floppies and hard disk
320 If you have floppies or hard disk partitions like that, it is likely
321 that they contain binaries from those other Unix systems; in order
322 to run these binaries, you will want to install linux-abi which is
323 a set of kernel modules that lets you run SCO, Xenix, Wyse,
324 UnixWare, Dell Unix and System V programs under Linux. It is
325 available via FTP (user: ftp) from
326 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
327 NOTE: that will work only for binaries from Intel-based systems;
328 PDP ones will have to wait until somebody ports Linux to -11 ;-)
330 If you only intend to mount files from some other Unix over the
331 network using NFS, you don't need the System V file system support
332 (but you need NFS file system support obviously).
334 Note that this option is generally not needed for floppies, since a
335 good portable way to transport files and directories between unixes
336 (and even other operating systems) is given by the tar program ("man
337 tar" or preferably "info tar"). Note also that this option has
338 nothing whatsoever to do with the option "System V IPC". Read about
339 the System V file system in
340 <file:Documentation/filesystems/sysv-fs.txt>.
341 Saying Y here will enlarge your kernel by about 27 KB.
343 To compile this as a module, choose M here: the module will be called
346 If you haven't heard about all of this before, it's safe to say N.
350 tristate "UFS file system support (read only)"
353 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
354 OpenBSD and NeXTstep) use a file system called UFS. Some System V
355 Unixes can create and mount hard disk partitions and diskettes using
356 this file system as well. Saying Y here will allow you to read from
357 these partitions; if you also want to write to them, say Y to the
358 experimental "UFS file system write support", below. Please read the
359 file <file:Documentation/filesystems/ufs.txt> for more information.
361 The recently released UFS2 variant (used in FreeBSD 5.x) is
364 Note that this option is generally not needed for floppies, since a
365 good portable way to transport files and directories between unixes
366 (and even other operating systems) is given by the tar program ("man
367 tar" or preferably "info tar").
369 When accessing NeXTstep files, you may need to convert them from the
370 NeXT character set to the Latin1 character set; use the program
371 recode ("info recode") for this purpose.
373 To compile the UFS file system support as a module, choose M here: the
374 module will be called ufs.
376 If you haven't heard about all of this before, it's safe to say N.
379 bool "UFS file system write support (DANGEROUS)"
380 depends on UFS_FS && EXPERIMENTAL
382 Say Y here if you want to try writing to UFS partitions. This is
383 experimental, so you should back up your UFS partitions beforehand.
389 If you are experiencing any problems with the UFS filesystem, say
390 Y here. This will result in _many_ additional debugging messages to be
391 written to the system log.
393 endif # MISC_FILESYSTEMS
395 menuconfig NETWORK_FILESYSTEMS
396 bool "Network File Systems"
400 Say Y here to get to see options for network filesystems and
401 filesystem-related networking code, such as NFS daemon and
402 RPCSEC security modules.
404 This option alone does not add any kernel code.
406 If you say N, all options in this submenu will be skipped and
407 disabled; if unsure, say Y here.
409 if NETWORK_FILESYSTEMS
412 tristate "NFS client support"
416 select NFS_ACL_SUPPORT if NFS_V3_ACL
418 Choose Y here if you want to access files residing on other
419 computers using Sun's Network File System protocol. To compile
420 this file system support as a module, choose M here: the module
423 To mount file systems exported by NFS servers, you also need to
424 install the user space mount.nfs command which can be found in
425 the Linux nfs-utils package, available from http://linux-nfs.org/.
426 Information about using the mount command is available in the
427 mount(8) man page. More detail about the Linux NFS client
428 implementation is available via the nfs(5) man page.
430 Below you can choose which versions of the NFS protocol are
431 available in the kernel to mount NFS servers. Support for NFS
432 version 2 (RFC 1094) is always available when NFS_FS is selected.
434 To configure a system which mounts its root file system via NFS
435 at boot time, say Y here, select "Kernel level IP
436 autoconfiguration" in the NETWORK menu, and select "Root file
437 system on NFS" below. You cannot compile this file system as a
443 bool "NFS client support for NFS version 3"
446 This option enables support for version 3 of the NFS protocol
447 (RFC 1813) in the kernel's NFS client.
452 bool "NFS client support for the NFSv3 ACL protocol extension"
455 Some NFS servers support an auxiliary NFSv3 ACL protocol that
456 Sun added to Solaris but never became an official part of the
457 NFS version 3 protocol. This protocol extension allows
458 applications on NFS clients to manipulate POSIX Access Control
459 Lists on files residing on NFS servers. NFS servers enforce
460 ACLs on local files whether this protocol is available or not.
462 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
463 protocol extension and you want your NFS client to allow
464 applications to access and modify ACLs on files on the server.
466 Most NFS servers don't support the Solaris NFSv3 ACL protocol
467 extension. You can choose N here or specify the "noacl" mount
468 option to prevent your NFS client from trying to use the NFSv3
474 bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
475 depends on NFS_FS && EXPERIMENTAL
476 select RPCSEC_GSS_KRB5
478 This option enables support for version 4 of the NFS protocol
479 (RFC 3530) in the kernel's NFS client.
481 To mount NFS servers using NFSv4, you also need to install user
482 space programs which can be found in the Linux nfs-utils package,
483 available from http://linux-nfs.org/.
488 bool "Root file system on NFS"
489 depends on NFS_FS=y && IP_PNP
491 If you want your system to mount its root file system via NFS,
492 choose Y here. This is common practice for managing systems
493 without local permanent storage. For details, read
494 <file:Documentation/filesystems/nfsroot.txt>.
496 Most people say N here.
499 tristate "NFS server support"
504 select NFS_ACL_SUPPORT if NFSD_V2_ACL
506 Choose Y here if you want to allow other computers to access
507 files residing on this system using Sun's Network File System
508 protocol. To compile the NFS server support as a module,
509 choose M here: the module will be called nfsd.
511 You may choose to use a user-space NFS server instead, in which
512 case you can choose N here.
514 To export local file systems using NFS, you also need to install
515 user space programs which can be found in the Linux nfs-utils
516 package, available from http://linux-nfs.org/. More detail about
517 the Linux NFS server implementation is available via the
520 Below you can choose which versions of the NFS protocol are
521 available to clients mounting the NFS server on this system.
522 Support for NFS version 2 (RFC 1094) is always available when
523 CONFIG_NFSD is selected.
532 bool "NFS server support for NFS version 3"
535 This option enables support in your system's NFS server for
536 version 3 of the NFS protocol (RFC 1813).
541 bool "NFS server support for the NFSv3 ACL protocol extension"
545 Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
546 never became an official part of the NFS version 3 protocol.
547 This protocol extension allows applications on NFS clients to
548 manipulate POSIX Access Control Lists on files residing on NFS
549 servers. NFS servers enforce POSIX ACLs on local files whether
550 this protocol is available or not.
552 This option enables support in your system's NFS server for the
553 NFSv3 ACL protocol extension allowing NFS clients to manipulate
554 POSIX ACLs on files exported by your system's NFS server. NFS
555 clients which support the Solaris NFSv3 ACL protocol can then
556 access and modify ACLs on your NFS server.
558 To store ACLs on your NFS server, you also need to enable ACL-
559 related CONFIG options for your local file systems of choice.
564 bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
565 depends on NFSD && PROC_FS && EXPERIMENTAL
568 select RPCSEC_GSS_KRB5
570 This option enables support in your system's NFS server for
571 version 4 of the NFS protocol (RFC 3530).
573 To export files using NFSv4, you need to install additional user
574 space programs which can be found in the Linux nfs-utils package,
575 available from http://linux-nfs.org/.
584 depends on NFSD_V3 || NFS_V3
590 config NFS_ACL_SUPPORT
596 depends on NFSD || NFS_FS
605 config SUNRPC_XPRT_RDMA
607 depends on SUNRPC && INFINIBAND && EXPERIMENTAL
608 default SUNRPC && INFINIBAND
610 This option enables an RPC client transport capability that
611 allows the NFS client to mount servers via an RDMA-enabled
614 To compile RPC client RDMA transport support as a module,
615 choose M here: the module will be called xprtrdma.
619 config SUNRPC_REGISTER_V4
620 bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
621 depends on SUNRPC && EXPERIMENTAL
624 Sun added support for registering RPC services at an IPv6
625 address by creating two new versions of the rpcbind protocol
628 This option enables support in the kernel RPC server for
629 registering kernel RPC services via version 4 of the rpcbind
630 protocol. If you enable this option, you must run a portmapper
631 daemon that supports rpcbind protocol version 4.
633 Serving NFS over IPv6 from knfsd (the kernel's NFS server)
634 requires that you enable this option and use a portmapper that
635 supports rpcbind version 4.
637 If unsure, say N to get traditional behavior (register kernel
638 RPC services using only rpcbind version 2). Distributions
639 using the legacy Linux portmapper daemon must say N here.
641 config RPCSEC_GSS_KRB5
642 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
643 depends on SUNRPC && EXPERIMENTAL
650 Choose Y here to enable Secure RPC using the Kerberos version 5
651 GSS-API mechanism (RFC 1964).
653 Secure RPC calls with Kerberos require an auxiliary user-space
654 daemon which may be found in the Linux nfs-utils package
655 available from http://linux-nfs.org/. In addition, user-space
656 Kerberos support should be installed.
660 config RPCSEC_GSS_SPKM3
661 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
662 depends on SUNRPC && EXPERIMENTAL
670 Choose Y here to enable Secure RPC using the SPKM3 public key
671 GSS-API mechansim (RFC 2025).
673 Secure RPC calls with SPKM3 require an auxiliary userspace
674 daemon which may be found in the Linux nfs-utils package
675 available from http://linux-nfs.org/.
680 tristate "SMB file system support (OBSOLETE, please use CIFS)"
684 SMB (Server Message Block) is the protocol Windows for Workgroups
685 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
686 files and printers over local networks. Saying Y here allows you to
687 mount their file systems (often called "shares" in this context) and
688 access them just like any other Unix directory. Currently, this
689 works only if the Windows machines use TCP/IP as the underlying
690 transport protocol, and not NetBEUI. For details, read
691 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
692 available from <http://www.tldp.org/docs.html#howto>.
694 Note: if you just want your box to act as an SMB *server* and make
695 files and printing services available to Windows clients (which need
696 to have a TCP/IP stack), you don't need to say Y here; you can use
697 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
700 General information about how to connect Linux, Windows machines and
701 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
703 To compile the SMB support as a module, choose M here:
704 the module will be called smbfs. Most people say N, however.
706 config SMB_NLS_DEFAULT
707 bool "Use a default NLS"
710 Enabling this will make smbfs use nls translations by default. You
711 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
712 settings and you need to give the default nls for the SMB server as
713 CONFIG_SMB_NLS_REMOTE.
715 The nls settings can be changed at mount time, if your smbmount
716 supports that, using the codepage and iocharset parameters.
718 smbmount from samba 2.2.0 or later supports this.
720 config SMB_NLS_REMOTE
721 string "Default Remote NLS Option"
722 depends on SMB_NLS_DEFAULT
725 This setting allows you to specify a default value for which
726 codepage the server uses. If this field is left blank no
727 translations will be done by default. The local codepage/charset
728 default to CONFIG_NLS_DEFAULT.
730 The nls settings can be changed at mount time, if your smbmount
731 supports that, using the codepage and iocharset parameters.
733 smbmount from samba 2.2.0 or later supports this.
735 source "fs/cifs/Kconfig"
738 tristate "NCP file system support (to mount NetWare volumes)"
739 depends on IPX!=n || INET
741 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
742 used by Novell NetWare clients to talk to file servers. It is to
743 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
744 to mount NetWare file server volumes and to access them just like
745 any other Unix directory. For details, please read the file
746 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
747 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
749 You do not have to say Y here if you want your Linux box to act as a
750 file *server* for Novell NetWare clients.
752 General information about how to connect Linux, Windows machines and
753 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
755 To compile this as a module, choose M here: the module will be called
756 ncpfs. Say N unless you are connected to a Novell network.
758 source "fs/ncpfs/Kconfig"
761 tristate "Coda file system support (advanced network fs)"
764 Coda is an advanced network file system, similar to NFS in that it
765 enables you to mount file systems of a remote server and access them
766 with regular Unix commands as if they were sitting on your hard
767 disk. Coda has several advantages over NFS: support for
768 disconnected operation (e.g. for laptops), read/write server
769 replication, security model for authentication and encryption,
770 persistent client caches and write back caching.
772 If you say Y here, your Linux box will be able to act as a Coda
773 *client*. You will need user level code as well, both for the
774 client and server. Servers are currently user level, i.e. they need
775 no kernel support. Please read
776 <file:Documentation/filesystems/coda.txt> and check out the Coda
777 home page <http://www.coda.cs.cmu.edu/>.
779 To compile the coda client support as a module, choose M here: the
780 module will be called coda.
783 tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
784 depends on INET && EXPERIMENTAL
787 If you say Y here, you will get an experimental Andrew File System
788 driver. It currently only supports unsecured read-only AFS access.
790 See <file:Documentation/filesystems/afs.txt> for more information.
795 bool "AFS dynamic debugging"
798 Say Y here to make runtime controllable debugging messages appear.
800 See <file:Documentation/filesystems/afs.txt> for more information.
805 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
806 depends on INET && NET_9P && EXPERIMENTAL
808 If you say Y here, you will get experimental support for
809 Plan 9 resource sharing via the 9P2000 protocol.
811 See <http://v9fs.sf.net> for more information.
815 endif # NETWORK_FILESYSTEMS
818 menu "Partition Types"
820 source "fs/partitions/Kconfig"
825 source "fs/nls/Kconfig"
826 source "fs/dlm/Kconfig"