Comparison Of File Systems

The following tables compare general and technical information for a number of file systems.

General information

File system Creator Year of introduction Original operating system
DECtape DEC 1964 PDP-6 Monitor
OS/3x0 FS IBM 1964 OS/360
Level-D DEC 1968 TOPS-10
George 3 ICT (later ICL) 1968 George 3
Version 6 Unix file system (V6FS) Bell Labs 1972 Version 6 Unix
RT-11 file system DEC 1973 RT-11
Disk Operating System (GEC DOS) GEC 1973 Core Operating System
CP/M file system Digital Research (Gary Kildall) 1974 CP/M
ODS-1 DEC 1975 RSX-11
GEC DOS filing system extended GEC 1977 OS4000
FAT (8-bit) Microsoft (Marc McDonald) for NCR 1977 Microsoft Standalone Disk BASIC-80 (later Microsoft Standalone Disk BASIC-86)
DOS 3.x Apple 1978 Apple DOS
UCSD p-System UCSD 1978 UCSD p-System
CBM DOS Commodore 1978 Commodore BASIC
Atari DOS Atari 1979 Atari 8-bit
Version 7 Unix file system (V7FS) Bell Labs 1979 Version 7 Unix
ODS-2 DEC 1979 OpenVMS
FAT12 Seattle Computer Products (Tim Paterson) 1980 QDOS/86-DOS (later IBM PC DOS 1.0)
ProDOS Apple 1980 Apple SOS (later ProDOS 8)
DFS Acorn Computers Ltd 1982 Acorn BBC Micro MOS
ADFS Acorn Computers Ltd 1983 Acorn Electron (later Arthur/RISC OS)
FFS Kirk McKusick 1983 4.2BSD
FAT16 IBM, Microsoft 1984 PC DOS 3.0, MS-DOS 3.0
MFS Apple 1984 System 1
Elektronika BK tape format NPO "Scientific centre" (now Sitronics) 1985 Vilnius Basic, BK monitor program
HFS Apple 1985 System 2.1
Amiga OFS[1] Metacomco for Commodore 1985 Amiga OS
GEMDOS Digital Research 1985 Atari TOS
NWFS Novell 1985 NetWare 286
High Sierra Ecma International 1986 MSCDEX for MS-DOS 3.1/3.2
FAT16B Compaq 1987 Compaq MS-DOS 3.31
Minix V1 FS Andrew S. Tanenbaum 1987 MINIX 1.0
Amiga FFS Commodore 1988 Amiga OS 1.3
ISO 9660:1988 Ecma International, ISO 1988 MS-DOS, "classic" Mac OS, and AmigaOS
HPFS IBM & Microsoft 1989 OS/2 1.2
Rock Ridge IEEE 1990 c. 1990 Unix
JFS1 IBM 1990 AIX
VxFS VERITAS 1991 SVR4.0
ext Rémy Card 1992 Linux
AdvFS DEC 1993 Digital Unix
NTFS Microsoft (Gary Kimura, Tom Miller) 1993 Windows NT 3.1
LFS Margo Seltzer 1993 Berkeley Sprite
ext2 Rémy Card 1993 Linux, Hurd
Xiafs Q. Frank Xia 1993 Linux
UFS1 Kirk McKusick 1994 4.4BSD
XFS SGI 1994 IRIX
HFS IBM 1994 MVS/ESA (now z/OS)
FAT16X Microsoft 1995 MS-DOS 7.0 / Windows 95
Joliet ("CDFS") Microsoft 1995 Microsoft Windows, Linux, "classic" Mac OS, and FreeBSD
UDF ISO/ECMA/OSTA 1995
FAT32, FAT32X Microsoft 1996 MS-DOS 7.10 / Windows 95 OSR2
QFS Sun Microsystems 1996 Solaris
GPFS IBM 1996 AIX, Linux
Be File System Be Inc. (D. Giampaolo, Cyril Meurillon) 1996 BeOS
Minix V2 FS Andrew S. Tanenbaum 1997 MINIX 2.0
HFS Plus Apple 1998 Mac OS 8.1
NSS Novell 1998 NetWare 5
PolyServe File System (PSFS) PolyServe 1998 Windows, Linux
ODS-5 DEC 1998 OpenVMS V7.2
WAFL NetApp 1998 Data ONTAP
ext3 Stephen Tweedie 1999 Linux
ISO 9660:1999 Ecma International, ISO 1999 Microsoft Windows, Linux, "classic" Mac OS, FreeBSD, and AmigaOS
JFS IBM 1999 OS/2 Warp Server for e-business
GFS Sistina (Red Hat) 2000 Linux
ReiserFS Namesys 2001 Linux
zFS IBM 2001 z/OS (backported to OS/390)
FATX Microsoft 2002 Xbox
UFS2 Kirk McKusick 2002 FreeBSD 5.0
OCFS Oracle Corporation 2002 Linux
SquashFS Phillip Lougher, Robert Lougher 2002 Linux
VMFS2 VMware 2002 VMware ESX Server 2.0
Lustre Cluster File Systems 2002 Linux
Fossil Bell Labs 2003 Plan 9 version 4
Google File System Google 2003 Linux
ZFS Sun Microsystems 2004 Solaris
Reiser4 Namesys 2004 Linux
Non-Volatile File System Palm, Inc. 2004 Palm OS Garnet
BeeGFS Fraunhofer/ ThinkParQ 2005 Linux
GlusterFS Gluster Inc. 2005 Linux
Minix V3 FS Andrew S. Tanenbaum 2005 MINIX 3
OCFS2 Oracle Corporation 2005 Linux
NILFS NTT 2005 Linux
VMFS3 VMware 2005 VMware ESX Server 3.0
GFS2 Red Hat 2006 Linux
ext4 various 2006 Linux
exFAT Microsoft 2006 Windows CE 6.0
Btrfs Chris Mason 2007 Linux
JXFS Hyperion Entertainment 2008 AmigaOS 4.1
HAMMER Matthew Dillon 2008 DragonFly BSD 2.0
LSFS StarWind Software 2009 Linux, FreeBSD, Windows
UniFS Nasuni 2009 Cloud
CASL Nimble Storage 2010 Linux
OrangeFS Omnibond and others 2011 Linux
VMFS5 VMware 2011 vSphere 5.0+
CHFS University of Szeged 2011 NetBSD 6.0+
ReFS Microsoft 2012 Windows Server 2012
F2FS Samsung Electronics 2012 Linux
bcachefs Kent Overstreet 2015 Linux
APFS Apple 2016 macOS High Sierra, iOS 10.3
NOVA UC, San Diego 2017 Linux
BlueStore/Cephfs Red Hat, University of California, Santa Cruz 2017 Linux
HAMMER2 Matthew Dillon 2017 DragonFly BSD 5.0
EROFS Huawei 2018 Android

Metadata

File system Stores file owner POSIX file permissions Creation timestamps Last access/ read timestamps Last metadata change timestamps Last archive timestamps Access control lists Security/ MAC labels Extended attributes/ Alternate data streams/ forks Metadata checksum/ ECC File system
Bcachefs Yes Yes Yes Yes Yes No Yes Yes Yes Yes Bcachefs
BeeGFS Yes Yes No Yes Yes No Yes ? Yes Yes BeeGFS
CP/M file system No No Yes No No No No No No No CP/M file system
DECtape No No Yes No No No No No No No DECtape
Elektronika BK tape format No No No No No No No No No Yes Elektronika BK
Level-D Yes Yes Yes Yes (date only) Yes Yes Yes (FILDAE) No No No Level-D
RT-11 No No Yes (date only) No No No No No No Yes RT-11
Version 6 Unix file system (V6FS) Yes Yes No Yes No No No No No No Version 6 Unix file system (V6FS)
Version 7 Unix file system (V7FS) Yes Yes No Yes No No No No No No Version 7 Unix file system (V7FS)
exFAT No No Yes Yes No No No No No No exFAT
FAT12/FAT16/FAT32 No No Yes Yes No No No No No No FAT12/FAT16/FAT32
HPFS Yes No Yes Yes No No No ? Yes No HPFS
NTFS Yes Yes Yes Yes Yes No Yes Yes Yes No NTFS
ReFS Yes Yes Yes Yes Yes No Yes ? Yes Yes ReFS
HFS No No Yes No No Yes No No Yes No HFS
HFS Plus Yes Yes Yes Yes Yes Yes Yes ? Yes No HFS Plus
FFS Yes Yes No Yes Yes No No No No No FFS
UFS1 Yes Yes No Yes Yes No Yes Yes No No UFS1
UFS2 Yes Yes Yes Yes Yes No Yes Yes Yes Partial UFS2
HAMMER Yes Yes Yes Yes Yes ? Yes Yes No Yes HAMMER
LFS Yes Yes No Yes Yes No No No No No LFS
ext Yes Yes No No No No No No No No ext
Xiafs Yes Yes No Yes Yes No No No No No Xiafs
ext2 Yes Yes No Yes Yes No Yes Yes Yes No ext2
ext3 Yes Yes No Yes Yes No Yes Yes Yes No ext3
ext4 Yes Yes Yes Yes Yes No Yes Yes Yes Partial ext4
NOVA Yes Yes Yes Yes Yes No No No No Yes NOVA
Lustre Yes Yes No Yes Yes No Yes Yes Yes No Lustre
F2FS Yes Yes Yes Yes Yes No Yes Yes Yes No F2FS
GPFS Yes Yes Yes Yes Yes No Yes Yes Yes Yes GPFS
GFS Yes Yes No Yes Yes No Yes Yes Yes No GFS
NILFS Yes Yes Yes No Yes No No No No Yes NILFS
ReiserFS Yes Yes No Yes Yes No Yes Yes Yes No ReiserFS
Reiser4 Yes Yes No Yes Yes No No No No No Reiser4
OCFS No Yes No No Yes Yes No No No No OCFS
OCFS2 Yes Yes No Yes Yes No No No No No OCFS2
XFS Yes Yes Partial Yes Yes No Yes Yes Yes Yes XFS
JFS Yes Yes Yes Yes Yes No Yes Yes Yes No JFS
QFS Yes Yes Yes Yes Yes Yes Yes No Yes No QFS
BFS Yes Yes Yes No No No No No Yes No BFS
AdvFS Yes Yes No Yes Yes No Yes No Yes No AdvFS
NSS Yes Yes Yes Yes Yes Yes Yes ? Yes No NSS
NWFS Yes ? Yes Yes Yes Yes Yes ? Yes No NWFS
ODS-5 Yes Yes Yes ? ? Yes Yes ? Yes No ODS-5
APFS Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes APFS
VxFS Yes Yes Yes Yes Yes No Yes ? Yes No VxFS
UDF Yes Yes Yes Yes Yes Yes Yes No Yes Yes UDF
Fossil Yes Yes No Yes Yes No No No No No Fossil
ZFS Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes ZFS
Btrfs Yes Yes Yes Yes Yes No Yes Yes Yes Yes Btrfs
Minix V1 Yes Yes No No No No No No No No Minix V1
Minix V2 Yes Yes No Yes Yes No No No No No Minix V2
Minix V3 Yes Yes No Yes Yes No No No No No Minix V3
VMFS2 Yes Yes No Yes Yes No No No No No VMFS2
VMFS3 Yes Yes No Yes Yes No No No No No VMFS3
ISO 9660:1988 No No Yes No No No No No No No ISO 9660:1988
Rock Ridge Yes Yes No Yes Yes No No No No No Rock Ridge
Joliet ("CDFS") No No Yes No No No No No No No Joliet ("CDFS")
ISO 9660:1999 No No Yes No No No No No No No ISO 9660:1999
High Sierra No No Yes No No No No No No No High Sierra
SquashFS Yes Yes No No Yes No No Yes Yes No SquashFS
BlueStore/Cephfs Yes Yes Yes Yes ? No Yes Yes Yes Yes BlueStore/Cephfs
File system Stores file owner POSIX file permissions Creation timestamps Last access/read timestamps Last metadata change timestamps Last archive timestamps Access control lists Security/ MAC labels Extended attributes/ Alternate data streams/ forks Metadata checksum/ ECC File system

Features

File capabilities

File system Hard links Symbolic links Block journaling Metadata-only journaling Case-sensitive Case-preserving File Change Log XIP Resident files (inline data)
DECtape No No No No No No No No ?
BeeGFS No Yes Yes Yes Yes Yes No No ?
Level-D No No No No No No No No ?
RT-11 No No No No No No No No ?
APFS Yes Yes ? ? Optional Yes ? ? ?
Version 6 Unix file system (V6FS) Yes No No No Yes Yes No No No
Version 7 Unix file system (V7FS) Yes No No No Yes Yes No No No
exFAT No No No Partial (with TexFAT only) No Yes No No No
FAT12 No No No Partial (with TFAT12 only) No Partial (with VFAT LFNs only) No No No
FAT16 / FAT16B / FAT16X No No No Partial (with TFAT16 only) No Partial (with VFAT LFNs only) No No No
FAT32 / FAT32X No No No? Partial (with TFAT32 only) No Partial (with VFAT LFNs only) No No No
GFS Yes Yes Yes Yes Yes Yes No No ?
HPFS No No No No No Yes No No ?
NTFS Yes Yes No Yes (2000) Yes Yes Yes ? Yes (approximately 700 bytes)
HFS Plus Yes Yes No Yes Optional Yes Yes No ?
FFS Yes Yes No No Yes Yes No No No
UFS1 Yes Yes No No Yes Yes No No No
UFS2 Yes Yes No Yes Yes Yes No ? No
HAMMER Yes Yes Yes Yes Yes Yes ? No ?
LFS Yes Yes Yes No Yes Yes No No ?
ext Yes Yes No No Yes Yes No No ?
Xiafs Yes Yes No No Yes Yes No No ?
ext2 Yes Yes No No Yes Yes No Yes ?
ext3 Yes Yes Yes (2001) Yes (2001) Yes Yes No Yes ?
ext4 Yes Yes Yes Yes Yes, optional Yes No Yes Yes (approximately 160 bytes)
NOVA Yes Yes No Yes Yes Yes No Yes ?
F2FS Yes Yes Yes No Yes Yes No No ?
Lustre Yes Yes Yes Yes Yes Yes Yes No ?
NILFS Yes Yes Yes No Yes Yes No No ?
ReiserFS Yes Yes Yes Yes Yes Yes No ? ?
Reiser4 Yes Yes Yes No Yes Yes No ? ?
OCFS No Yes No No Yes Yes No No ?
OCFS2 Yes Yes Yes Yes Yes Yes No No ?
XFS Yes Yes Yes Yes Yes Yes Yes ? ?
JFS Yes Yes Yes Yes (1990) Yes Yes No ? ?
QFS Yes Yes No Yes Yes Yes No No ?
BFS Yes Yes No Yes Yes Yes ? No ?
NSS Yes Yes ? Yes Yes Yes Yes No ?
NWFS Yes Yes No No Yes Yes Yes No ?
ODS-2 Yes Yes No Yes No No Yes No ?
ODS-5 Yes Yes No Yes No Yes Yes ? ?
UDF Yes Yes Yes Yes Yes Yes No Yes Yes
VxFS Yes Yes Yes No Yes Yes Yes ? ?
Fossil No No No No Yes Yes Yes No ?
ZFS Yes Yes Yes No Yes Yes No No ?
Btrfs Yes Yes Yes No Yes Yes ? ? ?
Bcachefs Yes Yes Yes No Yes Yes ? ? ?
Minix V1 Yes Yes No No Yes Yes No No ?
Minix V2 Yes Yes No No Yes Yes No No ?
Minix V3 Yes Yes No No Yes Yes No No ?
VMFS2 Yes Yes No Yes Yes Yes No No ?
VMFS3 Yes Yes No Yes Yes Yes No No ?
ReFS Yes Yes ? ? Yes Yes ? ? ?
ISO 9660 No No No No No No No No ?
Rock Ridge Yes Yes No No Yes Yes No No ?
Joliet ("CDFS") No No No No No Yes No No ?
SquashFS Yes Yes No No Yes Yes No No ?
BlueStore/Cephfs Yes Yes Yes Yes Yes Yes No No ?
File system Hard links Symbolic links Block journaling Metadata-only journaling Case-sensitive Case-preserving File Change Log XIP Resident files

Block capabilities

Note that in addition to the below table, block capabilities can be implemented below the file system layer in Linux (LVM, integritysetup, cryptsetup) or Windows (Volume Shadow Copy Service, SECURITY), etc.

File system Internal snapshotting / branching Encryption Deduplication Data checksum/ ECC Persistent Cache Multiple Devices Compression Self-healing
DECtape No No No No No No No No
BeeGFS No No Yes No No No Yes No
Level-D No No No No No No No No
RT-11 No No No No No No No No
APFS Yes Yes Yes No No No Yes No
Version 6 Unix file system (V6FS) No No No No No No No No
Version 7 Unix file system (V7FS) No No No No No No No No
exFAT No No No No No No No No
FAT12 No No No No No No Partial No
FAT16 / FAT16B / FAT16X No No No No No No Partial No
FAT32 / FAT32X No No No No No No No No
GFS No No ? No No No No No
HPFS ? No ? No No No No No
NTFS No Yes Yes No No No Yes No
HFS Plus No No No No No No No No
FFS No No No No No No No No
UFS1 No No No No No No No No
UFS2 Yes No No No No No No No
HAMMER Yes No Yes Yes No No No No
LFS Yes No No No No No No No
ext No No No No No No No No
Xiafs No No No No No No No No
ext2 No No No No No No No No
ext3 No No No No No No No No
ext4 No Yes, experimental No No No No No No
NOVA Yes No No Yes No No No ?
F2FS No Yes, experimental No No No No Yes No
Lustre No No No No Yes Yes No No
NILFS Yes, continuous No No Yes No No No No
ReiserFS No No No No No No No No
Reiser4 ? Yes ? No No No Yes No
OCFS No No No No No No No No
OCFS2 No No No No No No No No
XFS No No Yes No No No No No
JFS ? No ? No No No only in JFS1 on AIX No
QFS No No No No No No No No
BFS No No No No No No No No
NSS Yes Yes ? No No No Yes No
NWFS ? No ? No No No Yes No
ODS-2 Yes No No No No No No No
ODS-5 Yes No No No No No No
UDF No No No No No No No No
VxFS Yes No Yes No No No No No
Fossil Yes No Yes No No No Yes No
ZFS Yes Yes Yes Yes Yes Yes Yes Yes
Btrfs Yes No Yes Yes No Yes Yes Yes
Bcachefs Yes Yes No Yes No Yes Yes No
Minix V1 No No No No No No No No
Minix V2 No No No No No No No No
Minix V3 No No No No No No No No
VMFS2 No No No No No No No No
VMFS3 No No No No No No No No
ReFS ? No Yes Yes No No No Yes
ISO 9660 No No No No No No No No
Rock Ridge No No No No No No No No
Joliet ("CDFS") No No No No No No No No
SquashFS No No Yes Yes No No Yes No
BlueStore/Cephfs Yes No No Yes Yes Yes Yes Yes
File system Internal snapshotting / branching Encryption Deduplication Data checksum/ ECC Persistent Cache Multiple Devices Compression Self-healing

Resize capabilities

"Online" and "offline" are synonymous with "mounted" and "not mounted".

File system Host OS Offline grow Online grow Offline shrink Online shrink Add and remove physical volumes
FAT16 / FAT16B / FAT16X misc. Yes No Yes No No
FAT32 / FAT32X misc. Yes No Yes No No
exFAT misc. No No No No No
NTFS Windows Yes Yes Yes Yes No
ReFS Windows ? Yes ? No No
HFS macOS No No No No No
HFS+ macOS No Yes No Yes No
APFS macOS ? ? ? ? ?
SquashFS Linux No No No No No
NOVA Linux No No No No No
JFS Linux Yes No No No No
XFS Linux No Yes No No No
Lustre Linux ? Yes No No Yes
F2FS Linux Yes No No No No
NTFS Linux Yes No Yes No No
ext2 Linux Yes No Yes No No
ext3 Linux Yes Yes Yes No No
ReiserFS Linux Yes Yes Yes No No
Reiser4 Linux Yes Yes Yes No No
ext4 Linux Yes Yes Yes No No
Btrfs Linux Yes Yes Yes Yes Yes
Bcachefs Linux Yes Yes No No Yes
NILFS Linux No Yes No Yes No
ZFS misc. No Yes No Partial Yes
JFS2 AIX Yes Yes Yes Yes No
UFS2 FreeBSD Yes Yes (FreeBSD 10.0-RELEASE or later) No No No
HAMMER DragonflyBSD ? ? ? ? ?
BlueStore/Cephfs Linux No Yes No Yes Yes

Allocation and layout policies

File system Sparse files Block suballocation Tail packing Extents Variable file block size Allocate-on-flush Copy on write Trim support
DECtape No No No No No No No No
BeeGFS Yes No No Yes Yes Yes Yes ?
Level-D No No No Yes No No No ?
APFS Yes ? ? Yes ? Yes Yes Yes
Version 6 Unix file system (V6FS) Yes No No No No No ? No
Version 7 Unix file system (V7FS) Yes No No No No No ? No
exFAT No No No Partial (only if the file fits into one contiguous block range) No No No Yes (Linux)
FAT12 Partial (only inside of compressed volumes) Partial (only inside of Stacker 3/4 and DriveSpace 3 compressed volumes) No Partial (only inside of compressed volumes) No No No Yes (Linux)
FAT16 / FAT16B / FAT16X Partial (only inside of compressed volumes) Partial (only inside of Stacker 3/4 and DriveSpace 3 compressed volumes) No Partial (only inside of compressed volumes) No No No Yes (Linux)
FAT32 / FAT32X No No No No No No No Yes (Linux)
GFS Yes No Partial No No No ? Yes
HPFS No No No Yes No No ? Yes (Linux)
NTFS Yes Partial No Yes No No ? Yes (NT 6.1+; Linux)
HFS Plus No No No Yes No No ? Yes (macOS)
FFS Yes 8:1 No No No No ? No
UFS1 Yes 8:1 No No No No ? No
UFS2 Yes 8:1 No No Yes No ? Yes
LFS Yes 8:1 No No No No Yes ?
ext Yes No No No No No No No
Xiafs Yes No No No No No ? ?
ext2 Yes No No No No No No Yes
ext3 Yes No No No No No No Yes
ext4 Yes No No Yes No Yes No Yes
NOVA Yes No No Yes No No Yes ?
F2FS Yes No No Partial No Yes Yes Yes
Lustre Yes No No Yes No Yes ? ?
NILFS Yes No No No No Yes Yes Yes (Linux NILFS2)
ReiserFS Yes Yes Yes No No No ? ?
Reiser4 Yes Yes Yes Yes No Yes ? Testing
OCFS ? No No Yes No No ? ?
OCFS2 Yes No No Yes No No ? Yes (Linux)
XFS Yes No No Yes No Yes Yes, on request Yes (Linux)
JFS Yes Yes No Yes No No ? Yes (Linux)
QFS ? Yes No No No No ? ?
BFS ? No No Yes No No ? Yes (Haiku)
NSS ? No No Yes No Yes ? ?
NWFS ? Yes No No No No ? ?
ODS-5 ? No No Yes No No ? ?
VxFS Yes ? No Yes No No ? ?
UDF Yes No No Yes No ? Yes, for write once read many media No
Fossil ? No No No No No ? ?
ZFS Yes Yes No No Yes Yes Yes Yes
Btrfs Yes Yes Yes Yes Yes Yes Yes Yes
Bcachefs ? ? ? Yes ? Yes Yes ?
VMFS2 Yes Yes No No No No ? ?
VMFS3 Yes Yes No No No No ? ?
ReFS Yes ? ? ? No ? Yes Yes (NT 6.1+)
ISO 9660 No No No Yes No No No No
Rock Ridge No No No Yes No No No No
Joliet ("CDFS") No No No Yes No No No No
SquashFS Yes No Yes No No No No No
BlueStore/Cephfs Yes ? ? ? ? No Yes Yes
File system Sparse files Block suballocation Tail packing Extents Variable file block size Allocate-on-flush Copy on write Trim support

OS support

File system DOS Linux macOS Windows 9x (historic) Windows (current) Classic
Mac OS
FreeBSD OS/2 BeOS Minix Solaris z/OS Android
APFS No Partial (read-only with apfs-fuse or linux-apfs) Yes
(Since macOS Sierra)
No No No No No No No No No No
BeeGFS No Yes ? No No No No No ? ? ? No No
DECtape No No No No No No No No No No No No No
Level-D No ? ? No No No No No No No ? ? No
RT-11 No No No No No No No No No No No No No
Version 6 Unix file system (V6FS) No ? No No No No No No No No No No No
Version 7 Unix file system (V7FS) No Yes No No No No No No ? ? ? No No
exFAT No Yes (since 5.4, available as a kernel module or FUSE driver for earlier versions) Yes No Yes No Yes (available as a FUSE driver) No No No Yes (available as a FUSE driver) No With kernel 5.10
FAT12 Yes Yes Yes Yes Yes Yes Yes Yes Yes Partial (via dosdir, dosread, doswrite) Yes ? Yes
FAT16 / FAT16B / FAT16X Yes (FAT16 from DOS 3.0, FAT16B from DOS 3.31, FAT16X from DOS 7.0) Yes Yes Yes Yes Yes Yes Yes Yes Partial (via dosdir, dosread, doswrite, not FAT16X) Yes ? Yes
FAT32 / FAT32X Yes (from DOS 7.10) Yes Yes Yes (from Windows 95 OSR2) Yes ? Yes Yes Yes No Yes ? Yes
GFS No Yes ? No No No No ? ? ? ? ? No
HPFS Partial (with third-party drivers) Yes ? No No ? Yes Yes (from OS/2 1.2) ? No ? ? No
NTFS Partial (with third-party drivers) Yes Native since Linux Kernel 5.15 NTFS3. Older kernels may use backported NTFS3 driver or ntfs-3g Read only, write support needs Paragon NTFS or ntfs-3g Needs 3rd-party drivers like Paragon NTFS for Win98, DiskInternals NTFS Reader Yes No Yes with ntfs-3g ? Yes with ntfs-3g No Yes with ntfs-3g ? With third party tools
Apple HFS No Yes No write support since Mac OS X 10.6 and no support at all since macOS 10.15 No Needs Paragon HFS+ Yes No ? Yes No ? No No
Apple HFS Plus No Partial - writing support only to unjournalled FS Yes No Needs Paragon HFS+ Yes from Mac OS 8.1 No ? with addon No ? No No
FFS No ? Yes No ? ? Yes ? ? ? ? ? No
UFS1 No Partial - read only Yes No Partial (with ufs2tools, read only) ? Yes No ? ? Yes ? No
UFS2 No Yes Yes No Partial (with ufs2tools, read only) ? Yes No ? ? ? ? No
LFS No ? ? No No ? No No ? ? ? ? No
ext No Yes - until 2.1.20 No No No No No No No No No No No
Xiafs No Yes - until 2.1.20

Experimental port available to 2.6.32 and later

No No No No No No No No No No No
ext2 No Yes Needs Paragon ExtFS or ext2fsx Partial (read-only, with explore2fs) Needs Paragon ExtFS or partial with Ext2 IFS or ext2fsd No Yes No Yes ? ? ? No
ext3 No Yes Needs Paragon ExtFS or partial with ext2fsx (journal not updated on writing) Partial (read-only, with explore2fs) Needs Paragon ExtFS or partial with Ext2 IFS or ext2fsd Partial (read only)[citation needed] Yes No with addon ? Yes ? Yes
ext4 No Yes Needs Paragon ExtFS No Yes, with the optional WSL2; physical and VHDX virtual disks. ? Yes since FreeBSD 12.0 No with addon ? ? ? Yes
NOVA No Yes No No No No No No No No No No No
Lustre No Yes ? No No ? No ? ? ? Yes ? No
NILFS No Yes as an external kernel module ? No ? ? No ? ? ? ? ? No
F2FS No Yes No No No No No No No No No No Yes
ReiserFS No Yes ? No No ? Partial - Read Only from 6.0 to 10.x and dropped in 11.0 ? with addon ? ? ? No
Reiser4 No Yes with a kernel patch ? No No ? No ? ? ? ? ? No
SpadFS No Yes No No No No ? No No No No No No
OCFS No Yes ? No No ? No No ? ? ? ? No
OCFS2 No Yes ? No No ? No No ? ? ? ? No
XFS No Yes ? No No ? Partial ? with addon (read only) ? ? ? No
JFS No Yes ? No No ? No Yes ? ? ? ? No
QFS No Partial - client only ? No No ? No No ? ? Yes ? No
Be File System No Partial - read-only ? No No ? No No Yes ? ? ? No
NSS No Yes via EVMS ? No No ? No No ? ? ? ? No
NWFS Partial (with Novell drivers) ? ? No No ? Yes No ? ? ? ? No
ODS-2 No ? ? No No ? No No ? ? ? ? No
ODS-5 No ? ? No No ? No No ? ? ? ? No
UDF No Yes Yes ? Yes ? Yes ? ? ? Yes ? No
VxFS No Yes ? No No ? No No ? ? Yes ? No
Fossil No Yes Yes No No No Yes No No No Yes ? No
ZFS No Yes with FUSE or as an external kernel module Yes with Read/Write Developer Preview No Yes No Yes No No No Yes No No
Btrfs No Yes ? No Yes with WinBtrfs ? No ? ? ? ? ? No
Bcachefs No Yes No No No No No No No No No No No
VMFS2 No ? ? No No ? No No ? ? ? ? No
VMFS3 No ? ? No No ? No No ? ? ? ? No
IBM HFS No No No No No No No No No No No Yes No
IBM zFS No No No No No No No No No No No Yes No
ReFS No Needs Paragon ReFS for Linux ? No Yes ? ? ? ? ? ? ? No
ISO 9660 Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes Yes No
Rock Ridge No Yes Yes No No No Yes No No Yes Yes ? No
Joliet ("CDFS") No Yes Yes Yes Yes ? Yes Yes Yes ? Yes ? No
SquashFS No Yes Partial (There are ports of unsquashfs and mksquashfs.) No Partial (There are ports of unsquashfs and mksquashfs.) No Partial (There are ports of unsquashfs and mksquashfs and fusefs-port.) No No No No No No
BlueStore/Cephfs No Yes No No No No No No No No No No No
File system DOS Linux macOS Windows 9x (historic) Windows (current) Classic
Mac OS
FreeBSD OS/2 BeOS Minix Solaris z/OS Android

Limits

While storage devices usually have their size expressed in powers of 10 (for instance a 1 TB Solid State Drive will contain at least 1,000,000,000,000 (1012, 10004) bytes), filesystem limits are invariably powers of 2, so usually expressed with IEC prefixes. For instance, a 1 TiB limit means 240, 10244 bytes. Approximations (rounding down) using power of 10 are also given below to clarify.

File system Maximum filename length Allowable characters in directory entries Maximum pathname length Maximum file size Maximum volume size Max number of files
AdvFS 255 characters Any byte except NUL No limit defined 16 TiB (17.59 TB) 16 TiB (17.59 TB) ?
APFS 255 UTF-8 characters Unicode 9.0 encoded in UTF-8 ? EiB (9.223 EB) ? 263
Bcachefs 255 bytes Any byte except '/' and NUL No limit defined 16 EiB (18.44 EB) 16 EiB (18.44 EB) 264
BeeGFS 255 bytes Any byte except NUL No limit defined 16 EiB (18.44 EB) 16 EiB (18.44 EB) ?
BFS 255 bytes Any byte except NUL No limit defined 12,288 bytes to 260 GiB (279.1 GB) 256 PiB (288.2 PB) to 2 EiB (2.305 EB) Unlimited
BlueStore/Cephfs 255 characters any byte, except null, "/" No limit defined Max. 264 bytes, 1 TiB (1.099 TB) by default Not limited Not limited, default is 100,000 files per directory
Btrfs 255 bytes Any byte except '/' and NUL No limit defined 16 EiB (18.44 EB) 16 EiB (18.44 EB) 264
CBM DOS 16 bytes Any byte except NUL 0 (no directory hierarchy) 16 MiB (16.77 MB) 16 MiB (16.77 MB) ?
CP/M file system 8.3 ASCII except for < > . , ; : = ? * [ ] No directory hierarchy (but accessibility of files depends on user areas via USER command since CP/M 2.2) 32 MiB (33.55 MB) 512 MiB (536.8 MB) ?
DECtape 6.3 A–Z, 0–9 DTxN:FILNAM.EXT = 15 369,280 bytes (577 * 640) 369,920 bytes (578 * 640) ?
Disk Operating System (GEC DOS) ? ? ? ? at least 131,072 bytes ? ?
Elektronika BK tape format 16 bytes ? No directory hierarchy 64 KiB (65.53 KB) Not limited. Approx. 800 KiB (819.2 KB) (one side) for 90 min cassette ?
exFAT 255 UTF-16 characters Unicode except for control codes 0x0000 - 0x001F or " * / : < > ? \ | 32,760 characters with each path component no more than 255 characters 16 EiB (18.44 EB) 64 ZiB (75.55 ZB) (276 bytes) ?
ext 255 bytes Any byte except NUL No limit defined GiB (2.147 GB) GiB (2.147 GB) ?
ext2 255 bytes Any byte except NUL, / No limit defined 16 GiB (17.17 GB) to 2 TiB (2.199 TB) TiB (2.199 TB) to 32 TiB (35.18 TB) ?
ext3 255 bytes Any byte except NUL, / No limit defined 16 GiB (17.17 GB) to 2 TiB (2.199 TB) TiB (2.199 TB) to 32 TiB (35.18 TB) ?
ext4 255 bytes Any byte except NUL, / No limit defined 16 GiB (17.17 GB) to 16 TiB (17.59 TB) EiB (1.152 EB) 232 (static inode limit specified at creation)
F2FS 255 bytes Any byte except NUL, / No limit defined 4,228,213,756 KiB (4.329 TB) 16 TiB (17.59 TB) ?
FAT (8-bit) 6.3 (binary files) / 9 characters (ASCII files) ASCII (0x00 and 0xFF not allowed in first character) No directory hierarchy ? ? ?
FAT12/FAT16 8.3 (255 UCS-2 characters with LFN) SFN: OEM A-Z, 0-9, ! # $ % & ' ( ) - @ ^ _ ` { } ~, 0x80-0xFF, 0x20. LFN: Unicode except NUL, " * / : < > ? \ | No limit defined 32 MiB (33.55 MB) (4 GiB (4.294 GB)) MiB (1.048 MB) to 32 MiB (33.55 MB) ?
FAT16B/FAT16X 8.3 (255 UCS-2 characters with LFN) SFN: OEM A-Z, 0-9, ! # $ % & ' ( ) - @ ^ _ ` { } ~, 0x80-0xFF, 0x20. LFN: Unicode except NUL, " * / : < > ? \ | No limit defined 2 (4) GiB (2.147 GB) 16 MiB (16.77 MB) to 2 (4) GiB (2.147 GB) ?
FAT32/FAT32X 8.3 (255 UCS-2 characters with LFN) SFN: OEM A-Z, 0-9, ! # $ % & ' ( ) - @ ^ _ ` { } ~, 0x80-0xFF, 0x20. LFN: Unicode except NUL, " * / : < > ? \ | 32,760 characters with each path component no more than 255 characters GiB (4.294 GB) 512 MiB (536.8 MB) to 16 TiB (17.59 TB) ?
FATX 42 bytes ASCII. No limit defined GiB (2.147 GB) 16 MiB (16.77 MB) to 2 GiB (2.147 GB) ?
FFS 255 bytes Any byte except NUL No limit defined GiB (4.294 GB) 256 TiB (281.4 TB) ?
Fossil ? ? ? ? ? ?
GEC DOS filing system extended 8 bytes A–Z, 0–9. Period was directory separator ? No limit defined (workaround for OS limit) ? at least 131,072 bytes ? ?
GEMDOS 8.3 A-Z, a-z, 0-9 ! @ # $ % ^ & ( ) + - = ~ ` ; ' " , < > | [ ] ( ) _ ? ? ? ?
GFS2 255 bytes Any byte except NUL No limit defined 100 TiB (109.95 TB) to 8 EiB (9.223 EB) 100 TiB (109.95 TB) to 8 EiB (9.223 EB) ?
GFS 255 bytes Any byte except NUL No limit defined TiB (2.199 TB) to 8 EiB (9.223 EB) TiB (2.199 TB) to 8 EiB (9.223 EB) ?
GPFS 255 UTF-8 codepoints Any byte except NUL No limit defined 9 EiB (10.37 EB) 524,288 YiB (299 bytes) ?
HAMMER 1023 bytes Any byte except NUL ? ? EiB (1.152 EB) ?
HFS 31 bytes Any byte except : Unlimited GiB (2.147 GB) TiB (2.199 TB) ?
HFS Plus 255 UTF-16 characters Any valid Unicode Unlimited slightly less than 8 EiB (9.223 EB) slightly less than 8 EiB (9.223 EB) ?
High Sierra Format ? ? ? ? ? ?
HPFS 255 bytes Any byte except NUL No limit defined GiB (2.147 GB) TiB (2.199 TB) ?
IBM SFS 8.8 ? ? Non-hierarchical ? ?
ISO 9660:1988 Level 1: 8.3,
Level 2 & 3: ~ 180
Depends on Level ~ 180 bytes? GiB (4.294 GB) (Level 1 & 2) to 8 TiB (8.796 TB) (Level 3) TiB (8.796 TB) ?
ISO 9660:1999 ? ? ? ? ? ?
JFS 255 bytes Any Unicode except NUL No limit defined PiB (4.503 PB) 32 PiB (36.02 PB) ?
JFS1 255 bytes Any byte except NUL No limit defined EiB (9.223 EB) 512 TiB (562.9 TB) to 4 PiB (4.503 PB) ?
Joliet ("CDFS") 64 characters All UCS-2 code except *, /, \, :, ;, and ? ? same as ISO 9660:1988 same as ISO 9660:1988 ?
Level-D 6.3 A–Z, 0–9 DEVICE:FILNAM.EXT[PROJCT,PROGRM] = 7 + 10 + 15 = 32; + 5*7 for SFDs = 67 34,359,738,368 words (235); 206,158,430,208 SIXBIT bytes Approx 12 GiB (12.88 GB) (64 * 178 MiB (186.6 MB)) ?
Lustre 255 bytes Any byte except NUL No limit defined 16 EiB (18.44 EB) on ZFS 16 EiB (18.44 EB) ?
MFS 255 bytes Any byte except : No path (flat filesystem) 256 MiB (268.4 MB) 256 MiB (268.4 MB) ?
MicroDOS file system 14 bytes ? ? 16 MiB (16.77 MB) 32 MiB (33.55 MB) ?
Minix V1 FS 14 or 30 bytes, set at filesystem creation time Any byte except NUL No limit defined 256.5 MiB (268.9 MB) 64 MiB (67.10 MB) ?
Minix V2 FS 14 or 30 bytes, set at filesystem creation time Any byte except NUL No limit defined GiB (2.147 GB) GiB (1.073 GB) ?
Minix V3 FS 60 bytes Any byte except NUL No limit defined GiB (2.147 GB) GiB (4.294 GB) ?
NILFS 255 bytes Any byte except NUL No limit defined EiB (9.223 EB) EiB (9.223 EB) ?
NOVA 255 bytes Any byte except NUL, / No limit defined 16 EiB (18.44 EB) 16 EiB (18.44 EB) ?
NSS 256 characters Depends on namespace used Only limited by client TiB (8.796 TB) TiB (8.796 TB) ?
NTFS 255 characters In Win32 namespace: any UTF-16 code unit (case-insensitive) except /\:*"?<>| as well as NUL

In POSIX namespace: any UTF-16 code unit (case-sensitive) except / as well as NUL

32,767 characters with each path component (directory or filename) up to 255 characters long 16 TiB (17.59 TB) to 8 PiB (9.007 PB) 16 TiB (17.59 TB) to 8 PiB (9.007 PB) 232
NWFS 80 bytes Depends on namespace used No limit defined GiB (4.294 GB) TiB (1.099 TB) ?
OCFS 255 bytes Any byte except NUL No limit defined TiB (8.796 TB) TiB (8.796 TB) ?
OCFS2 255 bytes Any byte except NUL No limit defined PiB (4.503 PB) PiB (4.503 PB) ?
ODS-5 236 bytes ? 4,096 bytes TiB (1.099 TB) TiB (1.099 TB) ?
QFS 255 bytes Any byte except NUL No limit defined 16 EiB (18.44 EB) PiB (4.503 PB) ?
ReFS 255 UTF-16 characters In Win32 namespace: any UTF-16 code unit (case-insensitive) except /\:*"?<>| as well as NUL

In POSIX namespace: any UTF-16 code unit (case-sensitive) except / as well as NUL

32,767 characters with each path component (directory or filename) up to 255 characters long 16 EiB (18.44 EB) YiB (1.208 YB) ?
ReiserFS 4,032 bytes/255 characters Any byte except NUL or '/' No limit defined TiB (8.796 TB) (v3.6), 4 GiB (4.294 GB) (v3.5) 16 TiB (17.59 TB) ?
Reiser4 3,976 bytes Any byte except / and NUL No limit defined TiB (8.796 TB) on x86 ? ?
Rock Ridge 255 bytes Any byte except NUL or / No limit defined same as ISO 9660:1988 same as ISO 9660:1988 ?
RT-11 6.3 A–Z, 0–9, $ 0 (no directory hierarchy) 33,554,432 bytes (65536 * 512) 33,554,432 bytes ?
SquashFS 256 bytes ? No limit defined 16 EiB (18.44 EB) 16 EiB (18.44 EB) ?
UDF 255 bytes Any Unicode except NUL 1,023 bytes 16 EiB (18.44 EB) 512 MiB (536.8 MB) to 16 TiB (17.59 TB) ?
UFS1 255 bytes Any byte except NUL No limit defined 16 GiB (17.17 GB) to 256 TiB (281.4 TB) 16 EiB (18.44 EB) Subdirectory per directory is 32,767
UFS2 255 bytes Any byte except NUL No limit defined 512 GiB (549.7 GB) to 32 PiB (36.02 PB) 512 ZiB (604.4 ZB) (279 bytes) Subdirectory per directory is 32,767
UniFS No limit defined (depends on client) ? No limit defined (depends on client) Available cache space at time of write (depends on platform) No limit defined No limit defined
Version 6 Unix file system (V6FS) 14 bytes Any byte except NUL and / No limit defined 16 MiB (16.77 MB) 32 MiB (33.55 MB) ?
Version 7 Unix file system (V7FS) 14 bytes Any byte except NUL or / No limit defined GiB (1.073 GB) TiB (2.199 TB) ?
VMFS2 128 Any byte except NUL or / 2,048 TiB (4.398 TB) 64 TiB (70.36 TB) ?
VMFS3 128 Any byte except NUL or / 2,048 TiB (2.199 TB) 64 TiB (70.36 TB) ?
VxFS 255 bytes Any byte except NUL No limit defined 16 EiB (18.44 EB) ? ?
XFS 255 bytes Any byte except NUL No limit defined EiB (9.223 EB) EiB (9.223 EB) ?
Xiafs 248 bytes Any byte except NUL No limit defined 64 MiB (67.10 MB) GiB (2.147 GB) ?
ZFS 255 bytes Any Unicode except NUL No limit defined 16 EiB (18.44 EB) 281,474,976,710,656 YiB (2128 bytes) 2128
File system Maximum filename length Allowable characters in directory entries Maximum pathname length Maximum file size Maximum volume size Max number of files

See also

Notes

References

Tags:

Comparison Of File Systems General informationComparison Of File Systems MetadataComparison Of File Systems FeaturesComparison Of File Systems OS supportComparison Of File Systems LimitsComparison Of File Systems

🔥 Trending searches on Wiki English:

Paige BueckersUnited StatesLarry David2024 Israeli retaliatory strikes in Iran2024 Indian general election in Uttar PradeshThree-body problemKetamineOttoman EmpireDune (2021 film)Kylian MbappéIran–Israel proxy conflictKobe BryantTheodore RooseveltHelios Airways Flight 522Fallout (series)CyprusNader ShahGhosts (American TV series)Scarlett JohanssonMari EmmanuelChristopher LeeShakiraBilly JoelCristiano Ronaldo2024 Indian general election in AssamWish (film)Amar Singh Chamkila (film)Tom HollandGoogle MapsAli KhameneiSalekaAavesham (2024 film)Fallout (video game)Keanu ReevesKaty PerryIsra HirsiJustin BieberTurkeyRaindrop cakeWind Breaker (manga)QualtricsPoor Things (film)Adam ClaytonBlack Sails (TV series)EmailWrestleMania XLEarthRobloxList of most-followed TikTok accountsAlan RitchsonGoogle ScholarRobert F. Kennedy Jr.Bernard ArnaultAfghanistan2024 Indian general election in GujaratJaromír JágrBob MarleyMelissa BarreraWaco siegePam GrierUSS Iowa turret explosionAnne HathawayPeriodic tableCillian MurphyAngry German KidNicole Brown SimpsonHyderabad Lok Sabha constituencyFree Fire (video game)SwitzerlandUEFA Euro 2024List of members of the 17th Lok SabhaList of countries by GDP (nominal)XNXXElla PurnellSonic the Hedgehog 3 (film)Suge KnightKitum CaveSoviet Union🡆 More