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"
221 tristate "SonicBlue Optimized MPEG File System support"
225 This is the proprietary file system used by the Rio Karma music
226 player and ReplayTV DVR. Despite the name, this filesystem is not
227 more efficient than a standard FS for MPEG files, in fact likely
228 the opposite is true. Say Y if you have either of these devices
229 and wish to mount its disk.
231 To compile this file system support as a module, choose M here: the
232 module will be called omfs. If unsure, say N.
235 tristate "OS/2 HPFS file system support"
238 OS/2 is IBM's operating system for PC's, the same as Warp, and HPFS
239 is the file system used for organizing files on OS/2 hard disk
240 partitions. Say Y if you want to be able to read files from and
241 write files to an OS/2 HPFS partition on your hard drive. OS/2
242 floppies however are in regular MSDOS format, so you don't need this
243 option in order to be able to read them. Read
244 <file:Documentation/filesystems/hpfs.txt>.
246 To compile this file system support as a module, choose M here: the
247 module will be called hpfs. If unsure, say N.
251 tristate "QNX4 file system support (read only)"
254 This is the file system used by the real-time operating systems
255 QNX 4 and QNX 6 (the latter is also called QNX RTP).
256 Further information is available at <http://www.qnx.com/>.
257 Say Y if you intend to mount QNX hard disks or floppies.
258 Unless you say Y to "QNX4FS read-write support" below, you will
259 only be able to read these file systems.
261 To compile this file system support as a module, choose M here: the
262 module will be called qnx4.
264 If you don't know whether you need it, then you don't need it:
268 bool "QNX4FS write support (DANGEROUS)"
269 depends on QNX4FS_FS && EXPERIMENTAL && BROKEN
271 Say Y if you want to test write support for QNX4 file systems.
273 It's currently broken, so for now:
277 tristate "ROM file system support"
280 This is a very small read-only file system mainly intended for
281 initial ram disks of installation disks, but it could be used for
282 other read-only media as well. Read
283 <file:Documentation/filesystems/romfs.txt> for details.
285 To compile this file system support as a module, choose M here: the
286 module will be called romfs. Note that the file system of your
287 root partition (the one containing the directory /) cannot be a
290 If you don't know whether you need it, then you don't need it:
295 tristate "System V/Xenix/V7/Coherent file system support"
298 SCO, Xenix and Coherent are commercial Unix systems for Intel
299 machines, and Version 7 was used on the DEC PDP-11. Saying Y
300 here would allow you to read from their floppies and hard disk
303 If you have floppies or hard disk partitions like that, it is likely
304 that they contain binaries from those other Unix systems; in order
305 to run these binaries, you will want to install linux-abi which is
306 a set of kernel modules that lets you run SCO, Xenix, Wyse,
307 UnixWare, Dell Unix and System V programs under Linux. It is
308 available via FTP (user: ftp) from
309 <ftp://ftp.openlinux.org/pub/people/hch/linux-abi/>).
310 NOTE: that will work only for binaries from Intel-based systems;
311 PDP ones will have to wait until somebody ports Linux to -11 ;-)
313 If you only intend to mount files from some other Unix over the
314 network using NFS, you don't need the System V file system support
315 (but you need NFS file system support obviously).
317 Note that this option is generally not needed for floppies, since a
318 good portable way to transport files and directories between unixes
319 (and even other operating systems) is given by the tar program ("man
320 tar" or preferably "info tar"). Note also that this option has
321 nothing whatsoever to do with the option "System V IPC". Read about
322 the System V file system in
323 <file:Documentation/filesystems/sysv-fs.txt>.
324 Saying Y here will enlarge your kernel by about 27 KB.
326 To compile this as a module, choose M here: the module will be called
329 If you haven't heard about all of this before, it's safe to say N.
333 tristate "UFS file system support (read only)"
336 BSD and derivate versions of Unix (such as SunOS, FreeBSD, NetBSD,
337 OpenBSD and NeXTstep) use a file system called UFS. Some System V
338 Unixes can create and mount hard disk partitions and diskettes using
339 this file system as well. Saying Y here will allow you to read from
340 these partitions; if you also want to write to them, say Y to the
341 experimental "UFS file system write support", below. Please read the
342 file <file:Documentation/filesystems/ufs.txt> for more information.
344 The recently released UFS2 variant (used in FreeBSD 5.x) is
347 Note that this option is generally not needed for floppies, since a
348 good portable way to transport files and directories between unixes
349 (and even other operating systems) is given by the tar program ("man
350 tar" or preferably "info tar").
352 When accessing NeXTstep files, you may need to convert them from the
353 NeXT character set to the Latin1 character set; use the program
354 recode ("info recode") for this purpose.
356 To compile the UFS file system support as a module, choose M here: the
357 module will be called ufs.
359 If you haven't heard about all of this before, it's safe to say N.
362 bool "UFS file system write support (DANGEROUS)"
363 depends on UFS_FS && EXPERIMENTAL
365 Say Y here if you want to try writing to UFS partitions. This is
366 experimental, so you should back up your UFS partitions beforehand.
372 If you are experiencing any problems with the UFS filesystem, say
373 Y here. This will result in _many_ additional debugging messages to be
374 written to the system log.
376 endif # MISC_FILESYSTEMS
378 menuconfig NETWORK_FILESYSTEMS
379 bool "Network File Systems"
383 Say Y here to get to see options for network filesystems and
384 filesystem-related networking code, such as NFS daemon and
385 RPCSEC security modules.
387 This option alone does not add any kernel code.
389 If you say N, all options in this submenu will be skipped and
390 disabled; if unsure, say Y here.
392 if NETWORK_FILESYSTEMS
395 tristate "NFS client support"
399 select NFS_ACL_SUPPORT if NFS_V3_ACL
401 Choose Y here if you want to access files residing on other
402 computers using Sun's Network File System protocol. To compile
403 this file system support as a module, choose M here: the module
406 To mount file systems exported by NFS servers, you also need to
407 install the user space mount.nfs command which can be found in
408 the Linux nfs-utils package, available from http://linux-nfs.org/.
409 Information about using the mount command is available in the
410 mount(8) man page. More detail about the Linux NFS client
411 implementation is available via the nfs(5) man page.
413 Below you can choose which versions of the NFS protocol are
414 available in the kernel to mount NFS servers. Support for NFS
415 version 2 (RFC 1094) is always available when NFS_FS is selected.
417 To configure a system which mounts its root file system via NFS
418 at boot time, say Y here, select "Kernel level IP
419 autoconfiguration" in the NETWORK menu, and select "Root file
420 system on NFS" below. You cannot compile this file system as a
426 bool "NFS client support for NFS version 3"
429 This option enables support for version 3 of the NFS protocol
430 (RFC 1813) in the kernel's NFS client.
435 bool "NFS client support for the NFSv3 ACL protocol extension"
438 Some NFS servers support an auxiliary NFSv3 ACL protocol that
439 Sun added to Solaris but never became an official part of the
440 NFS version 3 protocol. This protocol extension allows
441 applications on NFS clients to manipulate POSIX Access Control
442 Lists on files residing on NFS servers. NFS servers enforce
443 ACLs on local files whether this protocol is available or not.
445 Choose Y here if your NFS server supports the Solaris NFSv3 ACL
446 protocol extension and you want your NFS client to allow
447 applications to access and modify ACLs on files on the server.
449 Most NFS servers don't support the Solaris NFSv3 ACL protocol
450 extension. You can choose N here or specify the "noacl" mount
451 option to prevent your NFS client from trying to use the NFSv3
457 bool "NFS client support for NFS version 4 (EXPERIMENTAL)"
458 depends on NFS_FS && EXPERIMENTAL
459 select RPCSEC_GSS_KRB5
461 This option enables support for version 4 of the NFS protocol
462 (RFC 3530) in the kernel's NFS client.
464 To mount NFS servers using NFSv4, you also need to install user
465 space programs which can be found in the Linux nfs-utils package,
466 available from http://linux-nfs.org/.
471 bool "Root file system on NFS"
472 depends on NFS_FS=y && IP_PNP
474 If you want your system to mount its root file system via NFS,
475 choose Y here. This is common practice for managing systems
476 without local permanent storage. For details, read
477 <file:Documentation/filesystems/nfsroot.txt>.
479 Most people say N here.
482 tristate "NFS server support"
487 select NFS_ACL_SUPPORT if NFSD_V2_ACL
489 Choose Y here if you want to allow other computers to access
490 files residing on this system using Sun's Network File System
491 protocol. To compile the NFS server support as a module,
492 choose M here: the module will be called nfsd.
494 You may choose to use a user-space NFS server instead, in which
495 case you can choose N here.
497 To export local file systems using NFS, you also need to install
498 user space programs which can be found in the Linux nfs-utils
499 package, available from http://linux-nfs.org/. More detail about
500 the Linux NFS server implementation is available via the
503 Below you can choose which versions of the NFS protocol are
504 available to clients mounting the NFS server on this system.
505 Support for NFS version 2 (RFC 1094) is always available when
506 CONFIG_NFSD is selected.
515 bool "NFS server support for NFS version 3"
518 This option enables support in your system's NFS server for
519 version 3 of the NFS protocol (RFC 1813).
524 bool "NFS server support for the NFSv3 ACL protocol extension"
528 Solaris NFS servers support an auxiliary NFSv3 ACL protocol that
529 never became an official part of the NFS version 3 protocol.
530 This protocol extension allows applications on NFS clients to
531 manipulate POSIX Access Control Lists on files residing on NFS
532 servers. NFS servers enforce POSIX ACLs on local files whether
533 this protocol is available or not.
535 This option enables support in your system's NFS server for the
536 NFSv3 ACL protocol extension allowing NFS clients to manipulate
537 POSIX ACLs on files exported by your system's NFS server. NFS
538 clients which support the Solaris NFSv3 ACL protocol can then
539 access and modify ACLs on your NFS server.
541 To store ACLs on your NFS server, you also need to enable ACL-
542 related CONFIG options for your local file systems of choice.
547 bool "NFS server support for NFS version 4 (EXPERIMENTAL)"
548 depends on NFSD && PROC_FS && EXPERIMENTAL
551 select RPCSEC_GSS_KRB5
553 This option enables support in your system's NFS server for
554 version 4 of the NFS protocol (RFC 3530).
556 To export files using NFSv4, you need to install additional user
557 space programs which can be found in the Linux nfs-utils package,
558 available from http://linux-nfs.org/.
567 depends on NFSD_V3 || NFS_V3
573 config NFS_ACL_SUPPORT
579 depends on NFSD || NFS_FS
588 config SUNRPC_XPRT_RDMA
590 depends on SUNRPC && INFINIBAND && EXPERIMENTAL
591 default SUNRPC && INFINIBAND
593 This option enables an RPC client transport capability that
594 allows the NFS client to mount servers via an RDMA-enabled
597 To compile RPC client RDMA transport support as a module,
598 choose M here: the module will be called xprtrdma.
602 config SUNRPC_REGISTER_V4
603 bool "Register local RPC services via rpcbind v4 (EXPERIMENTAL)"
604 depends on SUNRPC && EXPERIMENTAL
607 Sun added support for registering RPC services at an IPv6
608 address by creating two new versions of the rpcbind protocol
611 This option enables support in the kernel RPC server for
612 registering kernel RPC services via version 4 of the rpcbind
613 protocol. If you enable this option, you must run a portmapper
614 daemon that supports rpcbind protocol version 4.
616 Serving NFS over IPv6 from knfsd (the kernel's NFS server)
617 requires that you enable this option and use a portmapper that
618 supports rpcbind version 4.
620 If unsure, say N to get traditional behavior (register kernel
621 RPC services using only rpcbind version 2). Distributions
622 using the legacy Linux portmapper daemon must say N here.
624 config RPCSEC_GSS_KRB5
625 tristate "Secure RPC: Kerberos V mechanism (EXPERIMENTAL)"
626 depends on SUNRPC && EXPERIMENTAL
633 Choose Y here to enable Secure RPC using the Kerberos version 5
634 GSS-API mechanism (RFC 1964).
636 Secure RPC calls with Kerberos require an auxiliary user-space
637 daemon which may be found in the Linux nfs-utils package
638 available from http://linux-nfs.org/. In addition, user-space
639 Kerberos support should be installed.
643 config RPCSEC_GSS_SPKM3
644 tristate "Secure RPC: SPKM3 mechanism (EXPERIMENTAL)"
645 depends on SUNRPC && EXPERIMENTAL
653 Choose Y here to enable Secure RPC using the SPKM3 public key
654 GSS-API mechansim (RFC 2025).
656 Secure RPC calls with SPKM3 require an auxiliary userspace
657 daemon which may be found in the Linux nfs-utils package
658 available from http://linux-nfs.org/.
663 tristate "SMB file system support (OBSOLETE, please use CIFS)"
667 SMB (Server Message Block) is the protocol Windows for Workgroups
668 (WfW), Windows 95/98, Windows NT and OS/2 Lan Manager use to share
669 files and printers over local networks. Saying Y here allows you to
670 mount their file systems (often called "shares" in this context) and
671 access them just like any other Unix directory. Currently, this
672 works only if the Windows machines use TCP/IP as the underlying
673 transport protocol, and not NetBEUI. For details, read
674 <file:Documentation/filesystems/smbfs.txt> and the SMB-HOWTO,
675 available from <http://www.tldp.org/docs.html#howto>.
677 Note: if you just want your box to act as an SMB *server* and make
678 files and printing services available to Windows clients (which need
679 to have a TCP/IP stack), you don't need to say Y here; you can use
680 the program SAMBA (available from <ftp://ftp.samba.org/pub/samba/>)
683 General information about how to connect Linux, Windows machines and
684 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
686 To compile the SMB support as a module, choose M here:
687 the module will be called smbfs. Most people say N, however.
689 config SMB_NLS_DEFAULT
690 bool "Use a default NLS"
693 Enabling this will make smbfs use nls translations by default. You
694 need to specify the local charset (CONFIG_NLS_DEFAULT) in the nls
695 settings and you need to give the default nls for the SMB server as
696 CONFIG_SMB_NLS_REMOTE.
698 The nls settings can be changed at mount time, if your smbmount
699 supports that, using the codepage and iocharset parameters.
701 smbmount from samba 2.2.0 or later supports this.
703 config SMB_NLS_REMOTE
704 string "Default Remote NLS Option"
705 depends on SMB_NLS_DEFAULT
708 This setting allows you to specify a default value for which
709 codepage the server uses. If this field is left blank no
710 translations will be done by default. The local codepage/charset
711 default to CONFIG_NLS_DEFAULT.
713 The nls settings can be changed at mount time, if your smbmount
714 supports that, using the codepage and iocharset parameters.
716 smbmount from samba 2.2.0 or later supports this.
718 source "fs/cifs/Kconfig"
721 tristate "NCP file system support (to mount NetWare volumes)"
722 depends on IPX!=n || INET
724 NCP (NetWare Core Protocol) is a protocol that runs over IPX and is
725 used by Novell NetWare clients to talk to file servers. It is to
726 IPX what NFS is to TCP/IP, if that helps. Saying Y here allows you
727 to mount NetWare file server volumes and to access them just like
728 any other Unix directory. For details, please read the file
729 <file:Documentation/filesystems/ncpfs.txt> in the kernel source and
730 the IPX-HOWTO from <http://www.tldp.org/docs.html#howto>.
732 You do not have to say Y here if you want your Linux box to act as a
733 file *server* for Novell NetWare clients.
735 General information about how to connect Linux, Windows machines and
736 Macs is on the WWW at <http://www.eats.com/linux_mac_win.html>.
738 To compile this as a module, choose M here: the module will be called
739 ncpfs. Say N unless you are connected to a Novell network.
741 source "fs/ncpfs/Kconfig"
744 tristate "Coda file system support (advanced network fs)"
747 Coda is an advanced network file system, similar to NFS in that it
748 enables you to mount file systems of a remote server and access them
749 with regular Unix commands as if they were sitting on your hard
750 disk. Coda has several advantages over NFS: support for
751 disconnected operation (e.g. for laptops), read/write server
752 replication, security model for authentication and encryption,
753 persistent client caches and write back caching.
755 If you say Y here, your Linux box will be able to act as a Coda
756 *client*. You will need user level code as well, both for the
757 client and server. Servers are currently user level, i.e. they need
758 no kernel support. Please read
759 <file:Documentation/filesystems/coda.txt> and check out the Coda
760 home page <http://www.coda.cs.cmu.edu/>.
762 To compile the coda client support as a module, choose M here: the
763 module will be called coda.
766 tristate "Andrew File System support (AFS) (EXPERIMENTAL)"
767 depends on INET && EXPERIMENTAL
770 If you say Y here, you will get an experimental Andrew File System
771 driver. It currently only supports unsecured read-only AFS access.
773 See <file:Documentation/filesystems/afs.txt> for more information.
778 bool "AFS dynamic debugging"
781 Say Y here to make runtime controllable debugging messages appear.
783 See <file:Documentation/filesystems/afs.txt> for more information.
788 tristate "Plan 9 Resource Sharing Support (9P2000) (Experimental)"
789 depends on INET && NET_9P && EXPERIMENTAL
791 If you say Y here, you will get experimental support for
792 Plan 9 resource sharing via the 9P2000 protocol.
794 See <http://v9fs.sf.net> for more information.
798 endif # NETWORK_FILESYSTEMS
801 menu "Partition Types"
803 source "fs/partitions/Kconfig"
808 source "fs/nls/Kconfig"
809 source "fs/dlm/Kconfig"