CONTRIBUTING.d/patches: Please provide a git-range-diff(1)
[man-pages.git] / man5 / filesystems.5
blob4e9378c74e2e7d5b3713498b17880a3a2f11196e
1 .\" Copyright 1996 Daniel Quinlan (Daniel.Quinlan@linux.org)
2 .\"
3 .\" SPDX-License-Identifier: GPL-2.0-or-later
4 .\"
5 .\" 2007-12-14 mtk Added Reiserfs, XFS, JFS.
6 .\"
7 .TH filesystems 5 (date) "Linux man-pages (unreleased)"
8 .nh
9 .SH NAME
10 filesystems \- Linux filesystem types: ext, ext2, ext3, ext4, hpfs, iso9660,
11 JFS, minix, msdos, ncpfs nfs, ntfs, proc, Reiserfs, smb, sysv, umsdos, vfat,
12 XFS, xiafs
13 .SH DESCRIPTION
14 When, as is customary, the
15 .B proc
16 filesystem is mounted on
17 .IR /proc ,
18 you can find in the file
19 .I /proc/filesystems
20 which filesystems your kernel currently supports;
21 see
22 .BR proc (5)
23 for more details.
24 There is also a legacy
25 .BR sysfs (2)
26 system call (whose availability is controlled by the
27 .\" commit: 6af9f7bf3c399e0ab1eee048e13572c6d4e15fe9
28 .B CONFIG_SYSFS_SYSCALL
29 kernel build configuration option since Linux 3.15)
30 that enables enumeration of the currently available filesystem types
31 regardless of
32 .I /proc
33 availability and/or sanity.
35 If you need a currently unsupported filesystem, insert the corresponding
36 kernel module or recompile the kernel.
38 In order to use a filesystem, you have to
39 .I mount
40 it; see
41 .BR mount (2)
42 and
43 .BR mount (8).
45 The following list provides a
46 short description of the available or historically available
47 filesystems in the Linux kernel.
48 See the kernel documentation for a comprehensive
49 description of all options and limitations.
50 .TP
51 .B erofs
52 is the Enhanced Read-Only File System, stable since Linux 5.4.
53 .\" commit 47e4937a4a7ca4184fd282791dfee76c6799966a moves it out of staging
54 See
55 .BR erofs (5).
56 .TP
57 .B ext
58 is an elaborate extension of the
59 .B minix
60 filesystem.
61 It has been completely superseded by the second version
62 of the extended filesystem
63 .RB ( ext2 )
64 and has been removed from the kernel (in Linux 2.1.21).
65 .TP
66 .B ext2
67 is a disk filesystem that was used by Linux for fixed disks
68 as well as removable media.
69 The second extended filesystem was designed as an extension of the
70 extended filesystem
71 .RB ( ext ).
72 See
73 .BR ext2 (5).
74 .TP
75 .B ext3
76 is a journaling version of the
77 .B ext2
78 filesystem.
79 It is easy to
80 switch back and forth between
81 .B ext2
82 and
83 .BR ext3 .
84 See
85 .BR ext3 (5).
86 .TP
87 .B ext4
88 is a set of upgrades to
89 .B ext3
90 including substantial performance and
91 reliability enhancements,
92 plus large increases in volume, file, and directory size limits.
93 See
94 .BR ext4 (5).
95 .TP
96 .B hpfs
97 is the High Performance Filesystem, used in OS/2.
98 This filesystem is
99 read-only under Linux due to the lack of available documentation.
101 .B iso9660
102 is a CD-ROM filesystem type conforming to the ISO/IEC\~9660 standard.
105 .B "High Sierra"
106 Linux supports High Sierra, the precursor to the ISO/IEC\~9660 standard for
107 CD-ROM filesystems.
108 It is automatically recognized within the
109 .B iso9660
110 filesystem support under Linux.
112 .B "Rock Ridge"
113 Linux also supports the System Use Sharing Protocol records specified
114 by the Rock Ridge Interchange Protocol.
115 They are used to further describe the files in the
116 .B iso9660
117 filesystem to a UNIX host, and provide information such as long
118 filenames, UID/GID, POSIX permissions, and devices.
119 It is automatically recognized within the
120 .B iso9660
121 filesystem support under Linux.
124 .B JFS
125 is a journaling filesystem, developed by IBM,
126 that was integrated into Linux 2.4.24.
128 .B minix
129 is the filesystem used in the Minix operating system, the first to run
130 under Linux.
131 It has a number of shortcomings, including a 64\ MB partition size
132 limit, short filenames, and a single timestamp.
133 It remains useful for floppies and RAM disks.
135 .B msdos
136 is the filesystem used by DOS, Windows, and some OS/2 computers.
137 .B msdos
138 filenames can be no longer than 8 characters, followed by an
139 optional period and 3 character extension.
141 .B ncpfs
142 is a network filesystem that supports the NCP protocol,
143 used by Novell NetWare.
144 It was removed from the kernel in Linux 4.17.
146 To use
147 .BR ncpfs ,
148 you need special programs, which can be found at
149 .UR ftp://ftp.gwdg.de\:/pub\:/linux\:/misc\:/ncpfs
150 .UE .
152 .B nfs
153 is the network filesystem used to access disks located on remote computers.
155 .B ntfs
156 is the filesystem native to Microsoft Windows NT,
157 supporting features like ACLs, journaling, encryption, and so on.
159 .B proc
160 is a pseudo filesystem which is used as an interface to kernel data
161 structures rather than reading and interpreting
162 .IR /dev/kmem .
163 In particular, its files do not take disk space.
165 .BR proc (5).
167 .B Reiserfs
168 is a journaling filesystem, designed by Hans Reiser,
169 that was integrated into Linux 2.4.1.
171 .B smb
172 is a network filesystem that supports the SMB protocol, used by
173 Windows.
175 .UR https://www.samba.org\:/samba\:/smbfs/
176 .UE .
178 .B sysv
179 is an implementation of the System V/Coherent filesystem for Linux.
180 It implements all of Xenix FS, System V/386 FS, and Coherent FS.
182 .B umsdos
183 is an extended DOS filesystem used by Linux.
184 It adds capability for
185 long filenames, UID/GID, POSIX permissions, and special files
186 (devices, named pipes, etc.) under the DOS filesystem, without
187 sacrificing compatibility with DOS.
189 .B tmpfs
190 is a filesystem whose contents reside in virtual memory.
191 Since the files on such filesystems typically reside in RAM,
192 file access is extremely fast.
194 .BR tmpfs (5).
196 .B vfat
197 is an extended FAT filesystem used by Microsoft Windows95 and Windows NT.
198 .B vfat
199 adds the capability to use long filenames under the MSDOS filesystem.
201 .B XFS
202 is a journaling filesystem, developed by SGI,
203 that was integrated into Linux 2.4.20.
205 .B xiafs
206 was designed and implemented to be a stable, safe filesystem by
207 extending the Minix filesystem code.
208 It provides the basic most
209 requested features without undue complexity.
211 .B xiafs
212 filesystem is no longer actively developed or maintained.
213 It was removed from the kernel in Linux 2.1.21.
214 .SH SEE ALSO
215 .BR fuse (4),
216 .BR btrfs (5),
217 .BR ext2 (5),
218 .BR ext3 (5),
219 .BR ext4 (5),
220 .BR nfs (5),
221 .BR proc (5),
222 .BR sysfs (5),
223 .BR tmpfs (5),
224 .BR xfs (5),
225 .BR fsck (8),
226 .BR mkfs (8),
227 .BR mount (8)