.\" Copyright 1996 Daniel Quinlan (Daniel.Quinlan@linux.org)
.\"
-.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
-.\" This is free documentation; you can redistribute it and/or
-.\" modify it under the terms of the GNU General Public License as
-.\" published by the Free Software Foundation; either version 2 of
-.\" the License, or (at your option) any later version.
-.\"
-.\" The GNU General Public License's references to "object code"
-.\" and "executables" are to be interpreted as the output of any
-.\" document formatting or typesetting system, including
-.\" intermediate and printed output.
-.\"
-.\" This manual is distributed in the hope that it will be useful,
-.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
-.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-.\" GNU General Public License for more details.
-.\"
-.\" You should have received a copy of the GNU General Public
-.\" License along with this manual; if not, see
-.\" <http://www.gnu.org/licenses/>.
-.\" %%%LICENSE_END
+.\" SPDX-License-Identifier: GPL-2.0-or-later
.\"
.\" 2007-12-14 mtk Added Reiserfs, XFS, JFS.
.\"
-.TH FILESYSTEMS 5 2014-01-15 "Linux" "Linux Programmer's Manual"
+.TH filesystems 5 (date) "Linux man-pages (unreleased)"
.nh
.SH NAME
-filesystems \- Linux filesystem types: minix, ext, ext2, ext3, ext4, reiserfs,
-xfs, jfs, xiafs, msdos,
-umsdos, vfat, ntfs, proc, nfs, iso9660, hpfs, sysv, smb, ncpfs
+filesystems \- Linux filesystem types: ext, ext2, ext3, ext4, hpfs, iso9660,
+JFS, minix, msdos, ncpfs nfs, ntfs, proc, Reiserfs, smb, sysv, umsdos, vfat,
+XFS, xiafs
.SH DESCRIPTION
When, as is customary, the
.B proc
see
.BR proc (5)
for more details.
+There is also a legacy
+.BR sysfs (2)
+system call (whose availability is controlled by the
+.\" commit: 6af9f7bf3c399e0ab1eee048e13572c6d4e15fe9
+.B CONFIG_SYSFS_SYSCALL
+kernel build configuration option since Linux 3.15)
+that enables enumeration of the currently available filesystem types
+regardless of
+.I /proc
+availability and/or sanity.
+.PP
If you need a currently unsupported filesystem, insert the corresponding
-module or recompile the kernel.
-
+kernel module or recompile the kernel.
+.PP
In order to use a filesystem, you have to
.I mount
it; see
+.BR mount (2)
+and
.BR mount (8).
-
-Below a short description of the available or historically available
-filesystems in Linux kernel. See kernel documentation for a comprehensive
+.PP
+The following list provides a
+short description of the available or historically available
+filesystems in the Linux kernel.
+See the kernel documentation for a comprehensive
description of all options and limitations.
-.TP 10
-.B minix
-is the filesystem used in the Minix operating system, the first to run
-under Linux.
-It has a number of shortcomings, including a 64MB partition size
-limit, short filenames, and a single timestamp.
-It remains useful for floppies and RAM disks.
+.TP
+.B erofs
+is the Enhanced Read-Only File System, stable since Linux 5.4.
+.\" commit 47e4937a4a7ca4184fd282791dfee76c6799966a moves it out of staging
+See
+.BR erofs (5).
.TP
.B ext
is an elaborate extension of the
It has been completely superseded by the second version
of the extended filesystem
.RB ( ext2 )
-and has been removed from the kernel (in 2.1.21).
+and has been removed from the kernel (in Linux 2.1.21).
.TP
.B ext2
-is the high performance disk filesystem used by Linux for fixed disks
+is a disk filesystem that was used by Linux for fixed disks
as well as removable media.
The second extended filesystem was designed as an extension of the
extended filesystem
.RB ( ext ).
-.B ext2
-offers the best performance (in terms of speed and CPU usage) of
-the filesystems supported under Linux.
+See
+.BR ext2 (5).
.TP
.B ext3
is a journaling version of the
filesystem.
It is easy to
switch back and forth between
-.BRÂ ext2 " and " ext3 .
+.B ext2
+and
+.BR ext3 .
+See
+.BR ext3 (5).
.TP
.B ext4
is a set of upgrades to
including substantial performance and
reliability enhancements,
plus large increases in volume, file, and directory size limits.
-.TP
-.B reiserfs
-is a journaling filesystem, designed by Hans Reiser,
-that was integrated into Linux in kernel 2.4.1.
-.TP
-.B xfs
-is a journaling filesystem, developed by SGI,
-that was integrated into Linux in kernel 2.4.20.
-.TP
-.B jfs
-is a journaling filesystem, developed by IBM,
-that was integrated into Linux in kernel 2.4.24.
-.TP
-.B xiafs
-was designed and implemented to be a stable, safe filesystem by
-extending the Minix filesystem code.
-It provides the basic most
-requested features without undue complexity.
-The
-.B xiafs
-filesystem is no longer actively developed or maintained.
-It was removed from the kernel in 2.1.21.
-.TP
-.B msdos
-is the filesystem used by DOS, Windows, and some OS/2 computers.
-.B msdos
-filenames can be no longer than 8 characters, followed by an
-optional period and 3 character extension.
-.TP
-.B umsdos
-is an extended DOS filesystem used by Linux.
-It adds capability for
-long filenames, UID/GID, POSIX permissions, and special files
-(devices, named pipes, etc.) under the DOS filesystem, without
-sacrificing compatibility with DOS.
-.TP
-.B vfat
-is an extended DOS filesystem used by Microsoft Windows95 and Windows NT.
-.B vfat
-adds the capability to use long filenames under the MSDOS filesystem.
-.TP
-.B ntfs
-replaces Microsoft Window's FAT filesystems (VFAT, FAT32).
-It has reliability, performance, and space-utilization enhancements
-plus features like ACLs, journaling, encryption, and so on.
-.TP
-.B proc
-is a pseudo filesystem which is used as an interface to kernel data
-structures rather than reading and interpreting
-.IR /dev/kmem .
-In particular, its files do not take disk space.
See
-.BR proc (5).
+.BR ext4 (5).
+.TP
+.B hpfs
+is the High Performance Filesystem, used in OS/2.
+This filesystem is
+read-only under Linux due to the lack of available documentation.
.TP
.B iso9660
is a CD-ROM filesystem type conforming to the ISO 9660 standard.
filesystem support under Linux.
.RE
.TP
-.B hpfs
-is the High Performance Filesystem, used in OS/2.
-This filesystem is
-read-only under Linux due to the lack of available documentation.
+.B JFS
+is a journaling filesystem, developed by IBM,
+that was integrated into Linux 2.4.24.
.TP
-.B sysv
-is an implementation of the SystemV/Coherent filesystem for Linux.
-It implements all of Xenix FS, SystemV/386 FS, and Coherent FS.
+.B minix
+is the filesystem used in the Minix operating system, the first to run
+under Linux.
+It has a number of shortcomings, including a 64\ MB partition size
+limit, short filenames, and a single timestamp.
+It remains useful for floppies and RAM disks.
+.TP
+.B msdos
+is the filesystem used by DOS, Windows, and some OS/2 computers.
+.B msdos
+filenames can be no longer than 8 characters, followed by an
+optional period and 3 character extension.
+.TP
+.B ncpfs
+is a network filesystem that supports the NCP protocol,
+used by Novell NetWare.
+It was removed from the kernel in Linux 4.17.
+.IP
+To use
+.BR ncpfs ,
+you need special programs, which can be found at
+.UR ftp://ftp.gwdg.de\:/pub\:/linux\:/misc\:/ncpfs
+.UE .
.TP
.B nfs
is the network filesystem used to access disks located on remote computers.
.TP
+.B ntfs
+is the filesystem native to Microsoft Windows NT,
+supporting features like ACLs, journaling, encryption, and so on.
+.TP
+.B proc
+is a pseudo filesystem which is used as an interface to kernel data
+structures rather than reading and interpreting
+.IR /dev/kmem .
+In particular, its files do not take disk space.
+See
+.BR proc (5).
+.TP
+.B Reiserfs
+is a journaling filesystem, designed by Hans Reiser,
+that was integrated into Linux 2.4.1.
+.TP
.B smb
is a network filesystem that supports the SMB protocol, used by
-Windows for Workgroups, Windows NT, and Lan Manager.
-.sp
-To use
-.B smb
-fs, you need a special mount program, which can be found in the ksmbfs
-package, found at
-.UR ftp://sunsite.unc.edu\:/pub\:/Linux\:/system\:/Filesystems\:/smbfs
+Windows.
+See
+.UR https://www.samba.org\:/samba\:/smbfs/
.UE .
.TP
-.B ncpfs
-is a network filesystem that supports the NCP protocol, used by
-Novell NetWare.
-.sp
-To use
-.BR ncpfs ,
-you need special programs, which can be found at
-.UR ftp://linux01.gwdg.de\:/pub\:/ncpfs
-.UE .
+.B sysv
+is an implementation of the System V/Coherent filesystem for Linux.
+It implements all of Xenix FS, System V/386 FS, and Coherent FS.
+.TP
+.B umsdos
+is an extended DOS filesystem used by Linux.
+It adds capability for
+long filenames, UID/GID, POSIX permissions, and special files
+(devices, named pipes, etc.) under the DOS filesystem, without
+sacrificing compatibility with DOS.
+.TP
+.B tmpfs
+is a filesystem whose contents reside in virtual memory.
+Since the files on such filesystems typically reside in RAM,
+file access is extremely fast.
+See
+.BR tmpfs (5).
+.TP
+.B vfat
+is an extended FAT filesystem used by Microsoft Windows95 and Windows NT.
+.B vfat
+adds the capability to use long filenames under the MSDOS filesystem.
+.TP
+.B XFS
+is a journaling filesystem, developed by SGI,
+that was integrated into Linux 2.4.20.
+.TP
+.B xiafs
+was designed and implemented to be a stable, safe filesystem by
+extending the Minix filesystem code.
+It provides the basic most
+requested features without undue complexity.
+The
+.B xiafs
+filesystem is no longer actively developed or maintained.
+It was removed from the kernel in Linux 2.1.21.
.SH SEE ALSO
+.BR fuse (4),
+.BR btrfs (5),
+.BR ext2 (5),
+.BR ext3 (5),
+.BR ext4 (5),
+.BR nfs (5),
.BR proc (5),
+.BR sysfs (5),
+.BR tmpfs (5),
+.BR xfs (5),
.BR fsck (8),
.BR mkfs (8),
.BR mount (8)