Content deleted Content added
m Task 11: Disable the categories on this page while it is still a draft, per WP:USERNOCAT, using PC bot (v. 1.7) |
No edit summary |
||
Line 1:
== General information ==
{| class="wikitable sortable" style="width: auto; text-align: center; table-layout: fixed;"
! scope="col" | File system
! scope="col" | Creator
! scope="col" | Year of introduction
! scope="col" | Original [[operating system]]
|-
|{{rh}} | [[DECtape]]
| [[Digital Equipment Corporation|DEC]]
| 1964
| PDP-6 Monitor
|-
|{{rh}} | [[MVS#MVS filesystem|OS/3x0 FS]]
| [[IBM]]
| 1964
| [[OS/360]]
|-
|{{rh}} | Level-D
| [[Digital Equipment Corporation|DEC]]
| 1968
| [[TOPS-10]]
|-
|{{rh}} | George 2
| [[International Computers and Tabulators|ICT]] (later [[International Computers Limited|ICL]])
| 1968
| [[GEORGE (operating system)|George 2]]
|-
|{{rh}} | Version 6 Unix file system (V6FS)
| [[Bell Labs]]
| 1972
| [[Version 6 Unix]]
|-
|{{rh}} | [[RT-11]] file system
| [[Digital Equipment Corporation|DEC]]
| 1973
| [[RT-11]]
|-
|{{rh}} | Disk Operating System ([[GEC DOS]])
| [[The General Electric Company plc|GEC]]
| 1973
| Core Operating System
|-
|{{rh}} | [[CP/M file system]]
| [[Digital Research]] ([[Gary Kildall]])
| 1974
| [[CP/M]]<ref name="Shustek_2016">{{cite web |url=http://www.computerhistory.org/atchm/in-his-own-words-gary-kildall/ |title=In His Own Words: Gary Kildall |author-first=Len |author-last=Shustek |date=2016-08-02 |work=Remarkable People |publisher=[[Computer History Museum]]}}</ref><ref name="Kildall_1993">{{cite paper|orig-year=1993|date=2016-08-02|title=Computer Connections: People, Places, and Events in the Evolution of the Personal Computer Industry|author-first=Gary Arlen|author-last=Kildall|author-link=Gary Kildall|editor-first1=Scott|editor-last1=Kildall|editor-link=Scott Kildall|editor-first2=Kristin|editor-last2=Kildall|publisher=Kildall Family|type=Manuscript, part 1|url=http://www.computerhistory.org/atchm/computer-history-museum-license-agreement-for-the-kildall-manuscript/|access-date=2016-11-17}} <!-- Archives: https://web.archive.org/web/20161117231531/http://www.computerhistory.org/atchm/computer-history-museum-license-agreement-for-the-kildall-manuscript/ http://s3data.computerhistory.org/kildall-p.1-78-publishable-lowres.pdf https://web.archive.org/web/20161117232745/http://s3data.computerhistory.org/kildall-p.1-78-publishable-lowres.pdf --></ref>
|-
|{{rh}} | [[ODS-1]]
| [[Digital Equipment Corporation|DEC]]
| 1975
| [[RSX-11]]
|-
|{{rh}} | [[GEC DOS]] filing system extended
| [[The General Electric Company plc|GEC]]
| 1977
| [[OS4000]]
|-
|{{rh}} | [[FAT (8-bit)]]<!-- the 8-bit variant was just named "FAT" -->
| [[Microsoft]] ([[Marc McDonald]]) for [[National Cash Register|NCR]]
| 1977
| [[Microsoft Standalone Disk BASIC-80]] (later [[Microsoft Standalone Disk BASIC-86]])<!-- but not the normal "non-Standalone" Disk BASIC-80 and -86! -->
|-
|{{rh}} | [[Apple DOS|DOS 3.x]]<!-- This is the name of a file system *and* an operating system -->
| [[Apple Inc.|Apple]]
| 1978
| [[Apple DOS]]
|-
|{{rh}} | [[UCSD p-System]]
| [[UCSD]]
| 1978
| [[UCSD p-System]]
|-
|{{rh}} | [[CBM DOS]]
| [[Commodore International|Commodore]]
| 1978
| [[Commodore BASIC]]
|-
|{{rh}} | Version 7 Unix file system (V7FS)
| [[Bell Labs]]
| 1979
| [[Version 7 Unix]]
|-
|{{rh}} | [[ODS-2]]
| [[Digital Equipment Corporation|DEC]]
| 1979
| [[OpenVMS]]
|-
|{{rh}} | [[FAT12]]
| [[Seattle Computer Products]] ([[Tim Paterson]])
| <!-- August -->1980
| [[QDOS (SCP)|QDOS]]/[[86-DOS]] (later IBM [[PC DOS 1.0]])
|-
|{{rh}} | [[ProDOS]] <!-- This is the name of a file system *and* an operating system -->
| [[Apple Inc.|Apple]]
| 1980
| [[Apple SOS]] (later [[PRODOS|ProDOS 8]])
|-
|{{rh}} | [[Disc Filing System|DFS]]
| [[Acorn Computers Ltd]]
| 1982
| [[BBC Micro|Acorn BBC Micro]] [[Acorn MOS|MOS]]
|-
|{{rh}} | [[Advanced Disc Filing System|ADFS]]
| [[Acorn Computers Ltd]]
| 1983
| [[Acorn Electron]] (later [[RISC OS|Arthur/RISC OS]])
|-
|{{rh}} | [[Berkeley Fast File System|FFS]]
| [[Marshall Kirk McKusick|Kirk McKusick]]
| 1983
| [[4.2BSD]]
|-
|{{rh}} | [[FAT16]]
| [[IBM]], [[Microsoft]]
| <!-- August -->1984
| [[PC DOS 3.0]], [[MS-DOS 3.0]]
|-
|{{rh}} | [[Macintosh File System|MFS]]
| [[Apple Inc.|Apple]]
| 1984
| [[System 1]]
|-
|{{rh}} | [[Elektronika BK]] tape format
| NPO "Scientific centre" (now [[Sitronics]])
| 1985
| [[Vilnius Basic]], BK monitor program
|-
|{{rh}} | [[Hierarchical File System|HFS]]
| [[Apple Inc.|Apple]]
| <!-- September -->1985
| [[System 2.1]]
|-
|{{rh}} | [[Amiga Old File System|Amiga OFS]]{{ref|54}}
| [[Metacomco]] for [[Commodore International|Commodore]]
| 1985
| [[Amiga OS]]
|-
|{{rh}} | [[GEMDOS]]
| [[Digital Research]]
| 1985
| [[Atari TOS]]
|-
|{{rh}} | [[NetWare File System|NWFS]]
| [[Novell]]
| 1985
| [[NetWare 286]]
|-
|{{rh}} | [[High Sierra Format|High Sierra]]
| [[Ecma International]]
| 1986
| [[MSCDEX]] for MS-DOS 3.1/3.2<ref>{{cite journal |title=Extensions to MS-DOS Run CD-ROM |author-first=Scott |author-last=Mace |journal=[[InfoWorld]] |volume=8 |issue=38 |date=1986-09-22 |pages=1, 8 |url=https://books.google.com/books?id=ZS8EAAAAMBAJ&pg=PA1 |access-date=2016-11-09}}</ref>
|-
|{{rh}} | [[FAT16B]]
| [[Compaq]]
| 1987 <!-- November -->
| [[Compaq MS-DOS 3.31]]
|-
|{{rh}} | [[Minix file system|Minix V1 FS]]
| [[Andrew S. Tanenbaum]]
| 1987
| [[MINIX 1.0]]
|-
|{{rh}} | [[Amiga Fast File System|Amiga FFS]]
| [[Commodore International|Commodore]]
| 1988
| [[Amiga OS 1.3]]
|-
|{{rh}} | [[ISO 9660:1988]]
| [[Ecma International]], [[ISO]]
| 1988
| [[MS-DOS]], [["classic" Mac OS]], and [[AmigaOS]]
|-
|{{rh}} | [[High Performance File System|HPFS]]
| [[IBM]] & [[Microsoft]]
| 1989 <!-- November -->
| [[OS/2 1.2]]
|-
|{{rh}} | [[Rock Ridge]]
| [[IEEE]]
| {{Circa|1990|sortable=yes}}
| [[Unix]]
|-
|{{rh}} | [[JFS file system|JFS1]]
| [[IBM]]
| 1990
| [[IBM AIX|AIX]]{{efn |name=note-11 |IBM introduced JFS with the initial release of [[IBM AIX|AIX]] Version 3.1 in 1990. This file system now called JFS1. The new JFS, on which the Linux port was based, was first shipped in [[OS/2 Warp]] Server for e-Business in 1999. The same sourcebase was also used for release JFS2 on AIX 5L.}}
|-
|{{rh}} | [[Veritas File System|VxFS]]
| [[Veritas Software|VERITAS]]
| 1991
| [[System V|SVR4.0]]
|-
|{{rh}} | [[Extended file system|ext]]
| [[Rémy Card]]
| 1992
| [[Linux]]
|-
|{{rh}} | [[AdvFS]]
| [[Digital Equipment Corporation|DEC]]
| 1993<ref>{{cite web |last1=Warren |first1=David |date=20 October 1993 |title=Polycenter File System - - HELP |url=http://www.ornl.gov/lists/mailing-lists/tru64-unix-managers/1993/10/msg00043.html |archive-url=https://web.archive.org/web/20120309144054/http://www.ornl.gov/lists/mailing-lists/tru64-unix-managers/1993/10/msg00043.html |archive-date=9 March 2012}}</ref>
| [[Digital Unix]]
|-
|{{rh}} | [[NTFS]]
| [[Microsoft]] ([[Gary Kimura]], [[Tom Miller (computer programmer)|Tom Miller]])
|
| [[Windows NT 3.1]]
|-
|{{rh}} | [[Log-structured File System (BSD)|LFS]]
| [[Margo Seltzer]]
|
| [[Sprite operating system|Berkeley Sprite]]
|-
|{{rh}} | [[ext2]]
| [[Rémy Card]]
|
| [[Linux]], [[Hurd]]
|-
|{{rh}} | [[Xiafs]]
| Q. Frank Xia
|
| [[Linux]]
|-
|{{rh}} | [[UFS1 (file system)|UFS1]]
| [[Marshall Kirk McKusick|Kirk McKusick]]
|
| [[4.4BSD]]
|-
|{{rh}} | [[XFS]]
| [[Silicon Graphics|SGI]]
|
| [[IRIX]]
|-
|{{rh}} | [[Hierarchical File System (IBM MVS)|HFS]]
|
|
| [[MVS/ESA]] (now [[z/OS]])
|-
|{{rh}} | [[FAT16X]]
| [[Microsoft]]
|
| [[MS-DOS 7.0]] / [[Windows 95]]
|-
|{{rh}} | [[Joliet (file system)|Joliet ("CDFS")]]
| [[Microsoft]]
|
| [[Microsoft Windows]], [[Linux]], [["classic" Mac OS]], and [[FreeBSD]]
|-
|{{rh}} | [[Universal Disk Format|UDF]]
| [[International Organization for Standardization|ISO]]/[[Ecma International|ECMA]]/[[Optical Storage Technology Association|OSTA]]
|
| {{n/a}}
|-
|{{rh}} | [[FAT32]], [[FAT32X]]
| [[Microsoft]]
|
| [[MS-DOS 7.10]] / [[Windows 95 OSR2]]{{efn |name=note-10 |[[Microsoft]] first introduced FAT32 in [[MS-DOS 7.1]] / [[Windows 95 OSR2]] (OEM Service Release 2) and then later in [[Windows 98]]. NT-based Windows did not have ''any'' support for FAT32 up to Windows NT4; Windows 2000 was the first NT-based Windows OS that received the ability to work with it.}}
|-
|{{rh}} | [[QFS]]
| [[Sun Microsystems]]
| 1996
| [[Solaris (operating system)|Solaris]]
|-
|{{rh}} | [[GPFS]]
| [[IBM]]
| 1996
| [[IBM AIX|AIX]], [[Linux]]
|-
|{{rh}} | [[Be File System]]
| [[Be Inc.]] ([[Dominic Giampaolo|D. Giampaolo]], Cyril Meurillon)
|
| [[BeOS]]
|-
|{{rh}} | [[Minix file system|Minix V2 FS]]
| [[Andrew S. Tanenbaum]]
| 1997
| [[MINIX 2.0]]
|-
| 1998
| [[Mac OS 8.1]]
|-
|{{rh}} | [[Novell Storage Services|NSS]]
| [[Novell]]
| 1998
| [[NetWare 5]]
|-
|{{rh}} | PolyServe File System (PSFS)
| PolyServe
| 1998
|-
|{{rh}} | [[ODS-5]]
| [[Digital Equipment Corporation|DEC]]
| 1998
| [[OpenVMS 7.2]]
|-
|{{rh}} | [[Write Anywhere File Layout|WAFL]]
| [[NetApp]]
| 1998
| [[NetApp filer|Data ONTAP]]
|-
|{{rh}} | [[ext3]]
| [[Stephen Tweedie]]
| 1999
| [[Linux]]
|-
|{{rh}} | [[ISO 9660:1999]]
| [[Ecma International]], [[ISO]]
| 1999
| [[Microsoft Windows]], [[Linux]], [["classic" Mac OS]], [[FreeBSD]], and [[AmigaOS]]
|-
|{{rh}} | [[JFS file system|JFS]]
| [[IBM]]
| 1999
| [[OS/2 Warp]] Server for e-business
|-
|{{rh}} | [[Global File System|GFS]]
| [[Sistina Software|Sistina]] ([[Red Hat]])
| 2000
| [[Linux]]
|-
|{{rh}} | [[ReiserFS]]
| [[Namesys]]
| 2001
| [[Linux]]
|-
|{{rh}} | [[ZFS (z/OS file system)|zFS]]
| [[IBM]]
| 2001
| [[z/OS]] (backported to [[OS/390]])
|-
|{{rh}} | [[FATX]]
| [[Microsoft]]
| 2002
| [[Xbox]]
|-
|{{rh}} | [[UFS2 (file system)|UFS2]]
| [[Marshall Kirk McKusick|Kirk McKusick]]
| 2002
| [[FreeBSD 5.0]]
|-
|{{rh}} | [[OCFS]]
| [[Oracle Corporation]]
| 2002
| [[Linux]]
|-
|{{rh}} | [[SquashFS]]
| Phillip Lougher, Robert Lougher
| 2002
| [[Linux]]
|-
|{{rh}} | [[VMFS2]]
| [[VMware]]
| 2002
| [[VMware ESX Server 2.0]]
|-
|{{rh}} | [[Lustre (file system)|Lustre]]
| [[Cluster File Systems]]<ref>{{cite press release |title=Sun Microsystems Expands High Performance Computing Portfolio with Definitive Agreement to Acquire Assets of Cluster File Systems, Including the Lustre File System |___location=Santa Clara, Calif. |date=12 September 2007 |publisher=Sun Microsystems, Inc. |url=http://www.sun.com/aboutsun/pr/2007-09/sunflash.20070912.2.xml |archiveurl=https://web.archive.org/web/20071002091821/http://www.sun.com/aboutsun/pr/2007-09/sunflash.20070912.2.xml |archivedate=2 October 2007}}</ref>
| 2002
| [[Linux]]
|-
|{{rh}} | [[Fossil (file system)|Fossil]]
| [[Bell Labs]]
| 2003
| [[Plan 9 from Bell Labs|Plan 9]] version 4
|-
|{{rh}} | [[Google File System]]
| [[Google]]
| 2003
| [[Linux]]
|-
|{{rh}} | [[ZFS]]
| [[Sun Microsystems]]
| 2004
| [[Solaris (operating system)|Solaris]]
|-
|{{rh}} | [[Reiser4]]
| [[Namesys]]
| 2004
| [[Linux]]
|-
|{{rh}} | [[Non-Volatile File System]]
| [[Palm, Inc.]]
| 2004
| [[Palm OS Garnet]]
|-
|{{rh}} | [[BeeGFS]]
|Fraunhofer/ [http://thinkparq.com/ ThinkParQ]
|2005
|[[Linux]], [[Microsoft Windows|Windows]] via Samba
|-
|{{rh}} | [[GlusterFS]]
| Gluster Inc.
| 2005
| [[Linux]]
|-
|{{rh}} | [[Minix file system|Minix V3 FS]]
| [[Andrew S. Tanenbaum]]
|
| [[MINIX 3]]
|-
|{{rh}} | [[OCFS2]]
| [[Oracle Corporation]]
| 2005
| [[Linux]]
|-
|{{rh}} | [[NILFS]]
| [[Nippon Telegraph and Telephone|NTT]]
| 2005
| [[Linux]]
|-
|{{rh}} | [[VMFS3]]
| [[VMware]]
| 2005
| [[VMware ESX Server 3.0]]
|-
|{{rh}} | [[Global File System 2|GFS2]]
| [[Red Hat]]
| 2006
| [[Linux]]
|-
|{{rh}} | [[ext4]]
| various <!-- but akpm is not one of them -->
| 2006
| [[Linux]]
|-
|{{rh}} | [[exFAT]]
| [[Microsoft]]
| 2006
| [[Windows CE 6.0]]
|-
|{{rh}} | [[Btrfs]]
| [[Oracle Corporation]]
| 2007
| [[Linux]]
|-
|{{rh}} | JXFS
| [[Hyperion Entertainment]]
| 2008
| [[AmigaOS 4.1]]
|-
|{{rh}} | [[HAMMER (file system)|HAMMER]]
| [[Matthew Dillon (computer scientist)|Matthew Dillon]]
|
| [[DragonFly BSD#2.0|DragonFly BSD 2.0]]
|-
|{{rh}} | [[Log-Structured File System|LSFS]]
| [[StarWind Software]]
| 2009
| [[Linux]], [[FreeBSD]], [[Windows]]
|-
|{{rh}} | [[UniFS]]
| [[Nasuni]]
| 2009
| Cloud
|-
|{{rh}} | CASL
| [[Nimble Storage]]
| 2010
| [[Linux]]
|-
|{{rh}} | [[OrangeFS]]
|Omnibond and others
|2011
| [[Linux]]
|-
|{{rh}} | VMFS5
| [[VMware]]
| 2011
| [[vSphere]] 5.0+
|-
|{{rh}} | [[CHFS]]
| [[University of Szeged]]
| 2011
| [[NetBSD]] 6.0+
|-
|{{rh}} | [[ReFS]]
| [[Microsoft]]
| 2012
| [[Windows Server 2012]]
|-
|{{rh}} | [[F2FS]]
| [[Samsung Electronics]]
| 2012
| [[Linux]]
|-
|{{rh}} | [[bcachefs]]
| Kent Overstreet
| 2015
| [[Linux]]
|-
|{{rh}} | [[APFS]]
| [[Apple Inc.|Apple]]
| 2016
| [[macOS High Sierra]], [[iOS 10.3]]
|-
|{{rh}} | [[NOVA (filesystem)|NOVA]]
| [[University of California, San Diego|UC, San Diego]]
| 2017
| [[Linux]]
|-
|{{rh}} | [[HAMMER2]]
| [[Matthew Dillon (computer scientist)|Matthew Dillon]]<ref name=hammer2_design>{{cite web|url=http://bxr.su/d/sys/vfs/hammer2/DESIGN|title=hammer2/DESIGN|author=Matthew Dillon|author-link=Matthew Dillon (computer scientist)|website=BSD Cross Reference|publisher=[[DragonFly BSD]]|date=2018-12-09|access-date=2019-03-06}}</ref>
| 2017
| [[DragonFly BSD#5.0|DragonFly BSD 5.0]]
|-
|{{rh}} | EROFS
|[[Huawei]]<ref>{{Cite news|url=https://www.xda-developers.com/huawei-erofs-linux-file-system-android/|title=Huawei announces the EROFS Linux file system intended for Android devices|last=|first=|date=June 1, 2018|work=XDA Developer|access-date=}}</ref>
|2018
|[[Android (operating system)|Android]]
|}
== Limits ==
<div style="overflow-x:auto">
{| class="wikitable sortable" style="width: auto; text-align: center; table-layout: fixed;"
! File system
! Maximum [[filename]] length
! Allowable characters in directory entries{{efn |name=note-25 |These are the restrictions imposed by the on-disk directory entry structures themselves. Particular [[Installable File System]] drivers may place restrictions of their own on file and directory names; [[operating system]]s may also place restrictions of their own, across all filesystems. [[DOS]], [[Microsoft Windows|Windows]], and [[OS/2]] allow only the following characters from the current 8-bit [[OEM codepage]] in SFNs: A-Z, 0-9, characters <nowiki>! # $ % & ' ( ) - @ ^ _ ` { } ~</nowiki>, as well as 0x80-0xFF and 0x20 (SPACE). Specifically, lowercase letters a-z, characters <nowiki>" * / : < > ? \ | + , . ; = [ ]</nowiki>, control codes 0x00-0x1F, 0x7F and in some cases also 0xE5 are not allowed.) In LFNs, any [[UCS-2]] [[Unicode]] except <nowiki>\ / : ? * " > < | and NUL</nowiki> are allowed in file and directory names across all filesystems. [[Unix-like]] systems disallow the characters <nowiki>/ and NUL</nowiki> in file and directory names across all filesystems.}}
! Maximum pathname length
! Maximum file size
! Maximum volume size{{efn |name=note-4 |For filesystems that have variable allocation unit (block/cluster) sizes, a range of size are given, indicating the maximum volume sizes for the minimum and the maximum possible allocation unit sizes of the filesystem (e.g. 512 bytes and 128 [[kibibyte|KiB]] for FAT — which is the cluster size range allowed by the on-disk data structures, although some [[Installable File System]] drivers and [[operating system]]s do not support cluster sizes larger than 32 [[kibibyte|KiB]]).}}
!Max number of files
|-
| {{rh}} |[[BeeGFS]]
|255 bytes
|Any byte except NUL{{efn |name=note-26}}
|No limit defined{{efn |name=note-12}}
|16 [[exbibyte|EiB]]
|16 [[exbibyte|EiB]]
| {{dunno}}
|-
| {{rh}} | [[CP/M file system]]
| 8.3
| [[ASCII]] except for <nowiki>< > . , ; : = ? * [ ]</nowiki>
| No directory hierarchy (but accessibility of files depends on user areas via USER command since [[CP/M 2.2]])
| data-sort-type="number" data-sort-value="0" | 32 MiB
| data-sort-type="number" data-sort-value="0" | 512 MiB<!-- at least in CP/M 3 -->
| {{dunno}}
|-
| {{rh}} | IBM SFS
| 8.8
| {{dunno}}
| {{dunno}}
| data-sort-type="number" data-sort-value="0" | Non-hierarchical<ref>{{cite web |title=SFS file system |website=IBM Knowledge Center |url=http://www-01.ibm.com/support/knowledgecenter/SS6SGM_3.1.0/com.ibm.aix.cbl.doc/PGandLR/ref/rpfio50.htm}}</ref>
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} | [[DECtape]]
| 6.3
| A–Z, 0–9
| DTxN:FILNAM.EXT = 15
| data-sort-type="number" data-sort-value="369280" | 369,280 bytes (577 * 640)
| data-sort-type="number" data-sort-value="369280" | 369,920 bytes (578 * 640)
| {{dunno}}
|-
| {{rh}} | [[Elektronika BK]] tape format
| 16 bytes
| {{dunno}}
| No directory hierarchy
| data-sort-type="number" data-sort-value="65536" | 64 KiB
| data-sort-type="number" data-sort-value="800000" | Not limited. Approx. 800KB (one side) for 90 min cassette
| {{dunno}}
|-
| {{rh}} | MicroDOS file system
| 14 bytes
| {{dunno}}
| {{dunno}}
| data-sort-type="number" data-sort-value="16777216" | 16 MiB
| data-sort-type="number" data-sort-value="33554432" | 32 MiB
| {{dunno}}
|-
| {{rh}} | Level-D
| 6.3
| A–Z, 0–9
| DEVICE:FILNAM.EXT[PROJCT,PROGRM] = 7 + 10 + 15 = 32; + 5*7 for SFDs = 67
| data-sort-type="number" data-sort-value="206158430208" | 34,359,738,368 words (2**35-1); 206,158,430,208 SIXBIT bytes
| data-sort-type="number" data-sort-value="11392000000" | Approx 12 GB (64 * 178 MB)
| {{dunno}}
|-
| {{rh}} | [[RT-11]]
| 6.3
| A–Z, 0–9, $
| 0 (no directory hierarchy)
| data-sort-type="number" data-sort-value="33554432" | 33,554,432 bytes (65536 * 512)
| data-sort-type="number" data-sort-value="33554432" | 33,554,432 bytes
| {{dunno}}
|-
| {{rh}} | Version 6 Unix file system (V6FS)
| 14 bytes
| Any byte except [[Null character|NUL]] and <code>/</code>{{efn |name=note-26 |In these filesystems the directory entries named "." and ".." have special status. Directory entries with these names are not prohibited, and indeed exist as normal directory entries in the on-disk data structures. However, they are mandatory directory entries, with mandatory values, that are automatically created in each directory when it is created; and directories without them are considered corrupt.}}
| No limit defined{{efn |name=note-12 |The on-disk structures have no inherent limit. Particular [[Installable File System]] drivers and [[operating system]]s may impose limits of their own, however. Limited by its Current Directory Structure (CDS), [[DOS]] does not support more than 32 directory levels (except for [[DR DOS 3.31]]-[[DR DOS 6.0|6.0]]) or full pathnames longer than 66 bytes<!-- without the pending NUL character --> for FAT, or 255 characters for LFNs. Windows NT does not support full pathnames longer than 32,767 bytes for NTFS. Older POSIX APIs which rely on the <code>PATH_MAX</code> constant have a limit of 4,096 bytes on Linux but this can be worked around. Linux itself has no hard path length limits. <ref>{{cite web|url=https://eklitzke.org/path-max-is-tricky|title=PATH_MAX Is Tricky|website=Evan Klitzke’s web log}}</ref><ref>{{cite web|url=https://insanecoding.blogspot.com/2007/11/pathmax-simply-isnt.html|title=PATH_MAX simply isn't|website=Insane Coding}}</ref>}}
| data-sort-type="number" data-sort-value="16777216" | 16 [[mebibyte|MiB]]{{efn |name=note-57 |The file size in the inode is 1 8-bit byte followed by 1 16-bit word, for 24 bits. The actual maximum was 8,847,360 bytes, with 7 singly-indirect blocks and 1 doubly-indirect block; PWB/UNIX 1.0's variant had 8 singly-indirect blocks, making the maximum 524,288 bytes or half a [[mebibyte|MiB]].}}
| data-sort-type="number" data-sort-value="33554432" | 32 [[mebibyte|MiB]]
| {{dunno}}
|-
| {{rh}} | Disk Operating System ([[GEC DOS]])
| {{dunno}}
| {{dunno}}
| {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}} at least 131,072 bytes
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} | [[GEC DOS]] filing system extended
| 8 bytes
| A–Z, 0–9. Period was directory separator
| {{dunno}} No limit defined (workaround for OS limit)
| data-sort-type="number" data-sort-value="0" {{dunno}} at least 131,072 bytes
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} | [[CBM DOS]]
| 16 bytes
| Any byte except NUL
| 0 (no directory hierarchy)
| data-sort-type="number" data-sort-value="16777216" | 16 [[mebibyte|MiB]]
| data-sort-type="number" data-sort-value="16777216" | 16 [[mebibyte|MiB]]
| {{dunno}}
|-
| {{rh}} | Version 7 Unix file system (V7FS)
| 14 bytes
| Any byte except NUL or <code>/</code>{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="1073741824" | 1 [[gibibyte|GiB]]{{efn |name=note-58 |The actual maximum was 1,082,201,088 bytes, with 10 direct blocks, 1 singly-indirect block, 1 doubly-indirect block, and 1 triply-indirect block. The 4.0[[BSD]] and 4.1[[BSD]] versions, and the [[UNIX System V|System V]] version, used 1,024-byte blocks rather than 512-byte blocks, making the maximum 4,311,812,608 bytes or approximately 4 [[gibibyte|GiB]].}}
| data-sort-type="number" data-sort-value="2199023255552" | 2 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} | [[exFAT]]
| 255 [[UTF-16]] characters
| {{dunno}}
| 32,760 Unicode characters with each path component no more than 255 characters<ref name="msdn-FS-functionality">{{cite web|title=File System Functionality Comparison|url=https://msdn.microsoft.com/en-us/library/windows/desktop/ee681827(v=vs.85).aspx#limits|website=Microsoft Developer Network|publisher=Microsoft|accessdate=4 November 2017}}</ref>
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]<ref name="msdn-FS-functionality" />
| data-sort-type="number" data-sort-value="75557863725914323419136" | 64 [[zebibyte|ZiB]] (2<sup>76</sup> bytes)
| {{dunno}}
|-
| {{rh}} | [[FAT (8-bit)]]
| [[6.3 filename|6.3]] (binary files) / 9 characters (ASCII files)
| [[ASCII]] (0x00 and 0xFF not allowed in first character)
| No directory hierarchy
| data-sort-type="number" data-sort-value="0" {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} | [[FAT12]]/[[FAT16]]
| [[8.3 filename|8.3]] (255 [[UCS-2]]<!-- UCS-2, not UTF-16! --> characters with LFN){{efn |name=note-24 |Depends on whether the [[FAT12]], [[FAT16]], and [[FAT32]] ''implementation'' has support for [[Long filename|LFNs]]. Where it does not, as in [[OS/2]], [[DOS]], [[Windows 95]], [[Windows 98]] in DOS-only mode and the Linux "msdos" driver, file names are limited to [[8.3 filename|8.3 format]] of 8-bit [[OEM code page|OEM]] characters (space padded in both the basename and extension parts) and may not contain NUL (end-of-directory marker) or character 5 (replacement for character 229 which itself is used as deleted-file marker). Short names also must not contain lowercase letters. A few special [[device name]]s ([[CON:|CON]], [[NUL:|NUL]], [[AUX:|AUX]], [[PRN:|PRN]], [[LPT1:|LPT1]], [[COM1:|COM1]], etc.) should be avoided, as some operating systems (notably DOS, OS/2 and Windows) reserve them.}}
| SFN: [[OEM code page|OEM]] A-Z, 0-9, <nowiki>! # $ % & ' ( ) - @ ^ _ ` { } ~</nowiki>, 0x80-0xFF, 0x20. LFN: [[Unicode]] except NUL, <nowiki>" * / : < > ? \ |</nowiki> {{efn |name=note-25}}{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="33554432" | 32 [[mebibyte|MiB]] (4 [[gibibyte|GiB]]){{efn |name="note-fsize"|On-disk structures would support up to 4 [[gibibyte|GiB]], but practical file size is limited by volume size.}}
| data-sort-type="number" data-sort-value="33554432" | 1 [[mebibyte|MiB]] to 32 [[mebibyte|MiB]]
| {{dunno}}
|-
| {{rh}} | [[FAT16B]]/[[FAT16X]]
| [[8.3 filename|8.3]] (255 [[UCS-2]]<!-- UCS-2, not UTF-16! --> characters with LFN){{efn |name=note-24}}
| SFN: [[OEM code page|OEM]] A-Z, 0-9, <nowiki>! # $ % & ' ( ) - @ ^ _ ` { } ~</nowiki>, 0x80-0xFF, 0x20. LFN: [[Unicode]] except NUL, <nowiki>" * / : < > ? \ |</nowiki> {{efn |name=note-25}}{{efn |name=note-24}}{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2147483648" | 2 (4) [[gibibyte|GiB]]{{efn |name="note-fsize"}}
| data-sort-type="number" data-sort-value="2147483648" | 16 [[mebibyte|MiB]] to 2 (4) [[gibibyte|GiB]]
| {{dunno}}
|-
| {{rh}} | [[FAT32]]/[[FAT32X]]
| [[8.3 filename|8.3]] (255 [[UCS-2]]<!-- UCS-2, not UTF-16! --> characters with LFN){{efn |name=note-24}}
| SFN: [[OEM code page|OEM]] A-Z, 0-9, <nowiki>! # $ % & ' ( ) - @ ^ _ ` { } ~</nowiki>, 0x80-0xFF, 0x20. LFN: [[Unicode]] except NUL, <nowiki>" * / : < > ? \ |</nowiki> {{efn |name=note-25}}{{efn |name=note-24}}{{efn |name=note-26}}
| 32,760 Unicode characters with each path component no more than 255 characters<ref name="msdn-FS-functionality" />
| data-sort-type="number" data-sort-value="4294967295" | 4 [[gibibyte|GiB]]<ref name="msdn-FS-functionality" />
| data-sort-type="number" data-sort-value="17592186044415" | 512 [[mebibyte|MiB]] to 16 [[tebibyte|TiB]]{{efn |While FAT32 [[Partition (computing)|partitions]] this large work fine once created, some software won't allow creation of FAT32 partitions larger than 32 [[gibibyte|GiB]]. This includes, notoriously, the [[Windows XP]] installation program and the Disk Management console in Windows 2000, XP, 2003 and Vista. Use [[Fdisk|FDISK]] from a [[Windows Me|Windows ME]] Emergency Boot Disk to avoid.<ref>{{cite web |title= Limitations of the FAT32 File System in Windows XP |publisher=Microsoft |url=http://support.microsoft.com/kb/314463}}</ref>}}
| {{dunno}}
|-
| {{rh}} | [[FATX]]
| 42 bytes{{efn |name=note-24}}
| ASCII. [[Unicode]] not permitted.
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2147483648" | 2 [[gibibyte|GiB]]
| data-sort-type="number" data-sort-value="2147483648" | 16 [[mebibyte|MiB]] to 2 [[gibibyte|GiB]]
| {{dunno}}
|-
| {{rh}} | [[Fossil (file system)|Fossil]]
| {{dunno}}
| {{dunno}}
| {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} | [[GEMDOS]]
| 8.3
| A-Z, a-z, 0-9 <nowiki>! @ # $ % ^ & ( ) + - = ~ ` ; ' " , < > | [ ] ( ) _</nowiki><ref>{{cite web|url=http://cd.textfiles.com/ataricompendium/BOOK/HTML/CHAP2.HTM|title=GEMDOS Overview}}</ref>
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
| {{rh}} | [[APFS]]
| 255 [[UTF-8]] characters
| [[Unicode 9.0]] encoded in [[UTF-8]] <ref>https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/APFS_Guide/FAQ/FAQ.html</ref>
| {{dunno}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 8 [[exbibyte|EiB]]
| data-sort-type="number" data-sort-value="0" {{dunno}}
|2<sup>63</sup> <ref>https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/APFS_Guide/VolumeFormatComparison/VolumeFormatComparison.html</ref>
|-
| {{rh}} | [[F2FS]]
| 255 bytes
| Any byte except NUL, /{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="4332075813437" | 3.94 [[tebibyte|TiB]]
| data-sort-type="number" data-sort-value="17592186044416" | 16 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} | [[Macintosh File System|MFS]]
| 255 bytes
| Any byte except <code>:</code>
| No path (flat filesystem)
| data-sort-type="number" data-sort-value="268435456" | 256 [[mebibyte|MiB]]
| data-sort-type="number" data-sort-value="268435456" | 256 [[mebibyte|MiB]]
| {{dunno}}
|-
| {{rh}} | [[Hierarchical File System|HFS]]
| 31 bytes
| Any byte except <code>:</code>
| Unlimited
| data-sort-type="number" data-sort-value="2147483648" | 2 [[gibibyte|GiB]]
| data-sort-type="number" data-sort-value="2199023255552" | 2 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} | [[High Performance File System|HPFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-27 |The "." and ".." directory entries in HPFS that are seen by applications programs are a partial fiction created by the [[Installable File System]] drivers. The on-disk data structure for a directory does not contain entries by those names, but instead contains a special "start" entry. Whilst on-disk directory entries by those names are not physically prohibited, they cannot be created in normal operation, and a directory containing such entries is corrupt.}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2147483648" | 2 [[gibibyte|GiB]]
| data-sort-type="number" data-sort-value="2199023255552" | 2 [[tebibyte|TiB]]{{efn |name=note-13 |This is the limit of the on-disk structures. The HPFS [[Installable File System]] driver for [[OS/2]] uses the top 5 bits of the volume sector number for its own use, limiting the volume size that it can handle to 64 [[gibibyte|GiB]].}}
| {{dunno}}
|-
| {{rh}} | [[NTFS]]
| 255 characters<!--See MSKB http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnfiles/html/msdn_longfile.asp-->
| In [[Win32]] namespace: any [[UTF-16]] code unit (case-insensitive) except <code>/\:*"?<>|</code> as well as [[null character|NUL]]
In [[POSIX]] namespace: any [[UTF-16]] code unit (case-sensitive) except <code>/</code> as well as [[null character|NUL]]<ref>http://dubeyko.com/development/FileSystems/NTFS/ntfsdoc.pdf</ref>
| 32,767 Unicode characters with each path component (directory or filename) up to 255 characters long{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 EiB{{efn |name=note-55 |This is the limit of the on-disk structures. The NTFS driver for [[Windows NT]] limits the volume size that it can handle to 256 [[tebibyte|TiB]] and the file size to 16 [[tebibyte|TiB]] respectively; in Windows 10 version 1709, the limit is 8 PiB when using 2 MiB cluster size.}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 EiB{{efn |name=note-55}}
| 2<sup>32
|-
| {{rh}} class="table-rh" |[[ReFS]]
| 255 UTF-16 characters<ref name="blogs.msdn.microsoft.com">{{cite web|url=https://blogs.msdn.microsoft.com/b8/2012/01/16/building-the-next-generation-file-system-for-windows-refs/|title=Building the next generation file system for Windows: ReFS|author=Steven Sinofsky|authorlink=Steven Sinofsky|date=January 16, 2012}}</ref>
| Any [[Unicode]] except NUL, <code>/</code><ref name="blogs.msdn.microsoft.com" />
| 32,767 Unicode characters with each path component (directory or filename) up to 255 characters long<ref name="blogs.msdn.microsoft.com" />
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 EiB<ref name="blogs.msdn.microsoft.com" /><ref>{{Cite web|url=https://docs.microsoft.com/en-us/windows-server/storage/refs/refs-overview|title=Resilient File System (ReFS) overview|website=docs.microsoft.com|language=en-us|access-date=2017-11-07}}</ref>
| data-sort-type="number" data-sort-value="1208925819614629174706176" | 1 [[yobibyte|YiB]]<ref name="blogs.msdn.microsoft.com" />
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[HFS Plus]]
| 255 UTF-16 characters{{efn |name=note-1 |The "classic" Mac OS provides two sets of functions to retrieve file names from an HFS Plus volume, one of them returning the full Unicode names, the other shortened names fitting in the older 31 byte limit to accommodate older applications.}}
| Any valid [[Unicode]]{{efn |name=note-26}}{{efn |name=note-2 |HFS Plus mandates support for an [[escape sequence]] to allow arbitrary Unicode. Users of older software might see the escape sequences instead of the desired characters.}}
| Unlimited
| data-sort-type="number" data-sort-value="9223372036854775808" | slightly less than 8 EiB
| data-sort-type="number" data-sort-value="9223372036854775808" | slightly less than 8 EiB<ref>{{cite web|url=https://support.apple.com/en-us/HT201711|title=Mac OS X: Mac OS Extended format (HFS Plus) volume and file limits|website=support.apple.com|date=July 26, 2016}}</ref><ref>{{cite web|url=https://support.apple.com/kb/TA21924|title=Mac OS 8, 9: Mac OS Extended Format - Volume and File Limits|website=support.apple.com|date=February 20, 2012}}</ref>
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Berkeley Fast File System|FFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="4294967296" | 4 [[gibibyte|GiB]]
| data-sort-type="number" data-sort-value="281474976710656" | 256 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[HAMMER (file system)|HAMMER]]
| 255 bytes<ref>{{cite web|url=http://apollo.backplane.com/DFlyMisc/hammer2.txt|title=HAMMER2 Design Document|author=Matthew Dillon}}</ref>
| Any byte except NUL{{efn |name=note-26}}
| {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| data-sort-type="number" data-sort-value="1152921504606846976" | 1 [[exbibyte|EiB]]<ref>{{cite web|url=http://www.dragonflybsd.org/hammer/hammer.pdf|title=The HAMMER Filesystem|author=Matthew Dillon|date=June 21, 2008}}</ref>
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[UFS1 (file system)|UFS1]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="281474976710656" | 16 [[gibibyte|GiB]] to 256 [[tebibyte|TiB]]
| data-sort-type="number" data-sort-value="281474976710656" | 16 [[Exbibyte|EiB]]
| Subdirectory per directory is 32,767<ref name="ufs-limit">{{cite web |url=https://docs.oracle.com/cd/E19120-01/open.solaris/819-2723/fsfilesysappx-5/index.html |title=Maximum Number of UFS Subdirectories |publisher=[[Oracle Corporation|Oracle]] |accessdate=2019-02-12 }}</ref>
|-
| {{rh}} class="table-rh" |[[UFS2 (file system)|UFS2]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="36028797018963968" | 512 [[gibibyte|GiB]] to 32 [[pebibyte|PiB]]
| data-sort-type="number" data-sort-value="649037107316853896642560" | 512 [[Zebibyte|ZiB]]<ref>{{cite web |url=https://www.freebsd.org/doc/faq/book.html |title=Frequently Asked Questions for FreeBSD 9.X and 10.X |publisher=[[FreeBSD]] Documentation Project |accessdate=2016-03-20 |quote=If there was not a fsck(8) memory limit the maximum filesystem size would be 2 ^ 64 (blocks) * 32 KB => 16 Exa * 32 KB => 512 ZettaBytes. }}</ref> (2<sup>79</sup> bytes)
| Subdirectory per directory is 32,767<ref name="ufs-limit" />
|-
| {{rh}} class="table-rh" |[[Extended file system|ext]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2147483648" | 2 [[gibibyte|GiB]]
| data-sort-type="number" data-sort-value="2147483648" | 2 [[gibibyte|GiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Xiafs]]
| 248 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="67108864" | 64 [[mebibyte|MiB]]
| data-sort-type="number" data-sort-value="2147483648" | 2 [[gibibyte|GiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ext2]]
| 255 bytes
| Any byte except NUL, /{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2199023255552" | 16 [[gibibyte|GiB]] to 2 [[tebibyte|TiB]]{{efn |name=note-4}}
| data-sort-type="number" data-sort-value="35184372088832" | 2 [[tebibyte|TiB]] to 32 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ext3]]
| 255 bytes
| Any byte except NUL, /{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2199023255552" | 16 [[gibibyte|GiB]] to 2 [[tebibyte|TiB]]{{efn |name=note-4}}
| data-sort-type="number" data-sort-value="35184372088832" | 2 [[tebibyte|TiB]] to 32 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ext4]]
| 255 bytes<ref>{{cite web|url=https://arvimal.blog/2016/07/21/max-file-name-length-in-an-ext4-file-system/|title=Max file-name length in an EXT4 file system.|author=Vimal A.R|date={{date|2016-07-16}}|website=arvimal.blog}}</ref>
| Any byte except NUL, /{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="17592186044416" | 16 [[gibibyte|GiB]] to 16 [[tebibyte|TiB]]{{efn |name=note-4}}<ref name="ext4-features">{{cite web |title=Interviews/EricSandeen |date=9 June 2008 |website=Fedora Project Wiki |url=http://fedoraproject.org/wiki/Interviews/EricSandeen}}</ref>
| data-sort-type="number" data-sort-value="1152921504606846976" | 1 EiB
|2<sup>32</sup>
|-
| {{rh}} class="table-rh" |[[NOVA (filesystem)|NOVA]]
| 255 bytes
| Any byte except NUL, /{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Lustre (file system)|Lustre]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]] on [[ZFS]]
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[General Parallel File System|GPFS]]
| 255 UTF-8 [[codepoint]]s
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="0" | No limit found
| data-sort-type="number" data-sort-value="633825300114114700748351602688" | 2<sup>99</sup> bytes (2 [[Petabyte|PiB]] tested)
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Global File System|GFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 2 [[Tebibyte|TiB]] to 8 [[exbibyte|EiB]]{{efn |name=note-63 |Depends on kernel version and arch. For 2.4 kernels the max is 2 TiB. For 32-bit 2.6 kernels it is 16 TiB. For 64-bit 2.6 kernels it is 8 EiB.}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 2 [[Tebibyte|TiB]] to 8 [[exbibyte|EiB]]{{efn |name=note-63}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[NILFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 8 EiB
| data-sort-type="number" data-sort-value="9223372036854775808" | 8 EiB
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ReiserFS]]
| 4,032 bytes/255 characters
| Any byte except NUL or <code>'/'</code>{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[tebibyte|TiB]]{{efn |ReiserFS has a theoretical maximum file size of 1 [[exbibyte|EiB]], but "page cache limits this to 8 Ti on architectures with 32 bit int"<ref>{{cite web |title=FAQ |date=15 October 2003 |website=namesys |url=http://www.namesys.com/faq.html#reiserfsspecs |archive-url=https://web.archive.org/web/20060719110322/http://www.namesys.com/faq.html#reiserfsspecs |archive-date=19 July 2006}}</ref>}} (v3.6), 4 [[gibibyte|GiB]] (v3.5)
| data-sort-type="number" data-sort-value="17592186044416" | 16 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Reiser4]]
| 3,976 bytes
| Any byte except <code>/</code> and NUL
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[tebibyte|TiB]] on x86
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[OCFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[tebibyte|TiB]]
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[OCFS2]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="4503599627370496" | 4 [[pebibyte|PiB]]
| data-sort-type="number" data-sort-value="4503599627370496" | 4 [[pebibyte|PiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[XFS]]
| 255 bytes{{efn |Note that the filename can be much longer [[XFS#Extended attributes]]}}
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 8 [[exbibyte|EiB]]{{efn |name=note-9 |XFS has a limitation under Linux 2.4 of 64 [[tebibyte|TiB]] file size, but Linux 2.4 only supports a maximum block size of 2 [[tebibyte|TiB]]. This limitation is not present under [[IRIX]].}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 8 [[exbibyte|EiB]]{{efn |name=note-9}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[JFS file system|JFS1]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="9223372036854775808" | 8 [[exbibyte|EiB]]
| data-sort-type="number" data-sort-value="4503599627370496" | 512 [[tebibyte|TiB]] to 4 [[pebibyte|PiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[JFS file system|JFS]]
| 255 bytes
| Any [[Unicode]] except NUL
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="4503599627370496" | 4 [[pebibyte|PiB]]
| data-sort-type="number" data-sort-value="36028797018963968" | 32 [[pebibyte|PiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[QFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]{{efn |name=note-72 |QFS allows files to exceed the size of disk when used with its integrated HSM, as only part of the file need reside on disk at any one time.}}
| data-sort-type="number" data-sort-value="4503599627370496" | 4 [[pebibyte|PiB]]{{efn |name=note-72}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Be File System|BFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="279172874240" | 12,288 bytes to 260 [[gibibyte|GiB]]{{efn |name=note-3 |Varies wildly according to block size and fragmentation of block allocation groups.}}
| data-sort-type="number" data-sort-value="2305843009213693952" | 256 [[pebibyte|PiB]] to 2 [[exbibyte|EiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[AdvFS]]
| 255 characters
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="17592186044416" | 16 [[tebibyte|TiB]]
| data-sort-type="number" data-sort-value="17592186044416" | 16 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Novell Storage Services|NSS]]
| 256 characters
| Depends on namespace used{{efn |name=note-28 |NSS allows files to have multiple names, in separate namespaces.}}
| Only limited by client
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[tebibyte|TiB]]
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[NetWare File System|NWFS]]
| 80 bytes{{efn |name=note-52 |Some namespaces had lower name length limits. "LONG" had an 80-byte limit, "NWFS" 80 bytes, "NFS" 40 bytes and "DOS" imposed [[8.3 filename]].}}
| Depends on namespace used{{efn |name=note-28}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="4294967296" | 4 [[gibibyte|GiB]]
| data-sort-type="number" data-sort-value="1099511627776" | 1 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ODS-5]]
| 236 bytes{{efn |name=note-15 |Maximum combined filename/filetype length is 236 bytes; each component has an individual maximum length of 255 bytes.}}
| {{dunno}}
| 4,096 bytes{{efn |name=note-16 |Maximum pathname length is 4,096 bytes, but quoted limits on individual components add up to 1,664 bytes.}}
| data-sort-type="number" data-sort-value="1099511627776" | 1 [[tebibyte|TiB]]
| data-sort-type="number" data-sort-value="1099511627776" | 1 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Veritas File System|VxFS]]
| 255 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Universal Disk Format|UDF]]
| 255 bytes
| Any [[Unicode]] except NUL
| 1,023 bytes{{efn |name=note-43 |This restriction might be lifted in newer versions.}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| data-sort-type="number" data-sort-value="17592186044415" | 512 [[mebibyte|MiB]] to 16 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ZFS]]
| 255 bytes
| Any [[Unicode]] except NUL
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 EiB
| data-sort-type="number" data-sort-value="302231454903657293676544" | 256 [[Zebibyte|ZiB]] (2<sup>78</sup> bytes)
|2<sup>128</sup>
|-
| {{rh}} class="table-rh" |[[Btrfs]]
| 255 bytes
| Any byte except '/' and NUL
| No limit defined
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 EiB
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 EiB
|2<sup>64</sup>
|-
| {{rh}} class="table-rh" |[[Minix file system|Minix V1 FS]]
| 14 or 30 bytes, set at filesystem creation time
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="268966912" | 256.5 [[mebibyte|MiB]] {{efn |name=note-file-size-vs-filesystem-size |Sparse files can be larger than the file system size, even though they can't contain more data.}}
| data-sort-type="number" data-sort-value="67108864" | 64 [[mebibyte|MiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Minix file system|Minix V2 FS]]
| 14 or 30 bytes, set at filesystem creation time
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2147483647" | 2 [[gibibyte|GiB]] {{efn |name=note-file-size-vs-filesystem-size}}
| data-sort-type="number" data-sort-value="1073741824" | 1 [[gibibyte|GiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Minix file system|Minix V3 FS]]
| 60 bytes
| Any byte except NUL{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="2147483647" | 2 [[gibibyte|GiB]]<!-- max file size is a signed 32-bit int -->
| data-sort-type="number" data-sort-value="4294967296" | 4 [[gibibyte|GiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[VMFS2]]
| 128
| Any byte except NUL or <code>/</code>{{efn |name=note-26}}
| 2,048
| data-sort-type="number" data-sort-value="4398046511104" | 4 [[tebibyte|TiB]]{{efn |name=note-74 |Maximum file size on a VMFS volume depends on the block size for that VMFS volume. The figures here are obtained by using the maximum block size.}}
| data-sort-type="number" data-sort-value="70368744177664" | 64 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[VMFS3]]
| 128
| Any byte except NUL or <code>/</code>{{efn |name=note-26}}
| 2,048
| data-sort-type="number" data-sort-value="2199023255552" | 2 [[tebibyte|TiB]]{{efn |name=note-74}}
| data-sort-type="number" data-sort-value="70368744177664" | 64 [[tebibyte|TiB]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[ISO 9660:1988]]
| Level 1: 8.3,<br />Level 2 & 3: ~ 180
| Depends on Level{{efn |[[ISO 9660#Restrictions]]}}
| ~ 180 bytes?
| data-sort-type="number" data-sort-value="8796093022208" | 4 [[GiB]] (Level 1 & 2) to 8 [[TiB]] (Level 3){{efn |Through the use of multi-extents, a file can consist of multiple segments, each up to 4 [[GiB]] in size. See [[ISO 9660#The 2 GiB (or 4 GiB depending on implementation) file size limit]]}}
| data-sort-type="number" data-sort-value="8796093022208" | 8 [[TiB]]{{efn |Assuming the typical 2048 Byte sector size. The volume size is specified as a 32 bit value identifying the number of sectors on the volume.}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Joliet (file system)|Joliet ("CDFS")]]
| 64 [[Unicode]] characters
| All [[UCS-2]] code except *, /, \, :, ;, and ?<ref>{{cite web |url=http://bmrc.berkeley.edu/people/chaffee/jolspec.html |title=Joliet Specification |date=22 May 1995 |archive-url=https://web.archive.org/web/20090414104421/http://bmrc.berkeley.edu/people/chaffee/jolspec.html|archive-date=14 April 2009}}</ref>
| {{dunno}}
| data-sort-type="number" data-sort-value="8796093022208" | same as [[ISO 9660:1988]]
| data-sort-type="number" data-sort-value="8796093022208" | same as [[ISO 9660:1988]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[Rock Ridge]]
| 255 bytes
| Any byte except NUL or /{{efn |name=note-26}}
| No limit defined{{efn |name=note-12}}
| data-sort-type="number" data-sort-value="8796093022208" | same as [[ISO 9660:1988]]
| data-sort-type="number" data-sort-value="8796093022208" | same as [[ISO 9660:1988]]
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[UniFS]]
| No limit defined (depends on client)
| {{dunno}}
| No limit defined (depends on client)
| Available cache space at time of write (depends on platform)
| No limit defined
| No limit defined
|-
| {{rh}} class="table-rh" |[[ISO 9660:1999]]
| {{dunno}}
| {{dunno}}
| {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[High Sierra Format]]
| {{dunno}}
| {{dunno}}
| {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| data-sort-type="number" data-sort-value="0" {{dunno}}
| {{dunno}}
|-
| {{rh}} class="table-rh" |[[SquashFS]]
| {{dunno}}
| {{dunno}}
| No limit defined
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| data-sort-type="number" data-sort-value="18446744073709551616" | 16 [[exbibyte|EiB]]
| {{dunno}}
|- class="sortbottom"
! File system
! Maximum filename length
! Allowable characters in directory entries{{efn |name=note-25}}
! Maximum pathname length
! Maximum file size
! Maximum volume size{{efn |name=note-4}}
! Max number of files
|}
<
<div style="overflow-x:auto">
{| class="wikitable sortable" style="width: auto; text-align: center; table-layout: fixed; margin: 0;"
! File system
! Stores file owner
! [[POSIX]] file permissions
! Creation timestamps
! Last access/ read timestamps
! Last metadata change timestamps
! Last archive timestamps
! [[Access control list]]s
! Security/ [[Mandatory access control|MAC]] labels
! [[Extended attribute]]s/ [[Fork (filesystem)|Alternate data streams/ forks]]
! Checksum/ [[Error-correcting code|ECC]]
|-
|{{rh}} | [[BeeGFS]]
|{{yes}}
|{{yes}}
|{{no}}
|{{yes}}
|{{yes}}
|{{no}}
|{{yes}}
|{{dunno}}
|{{yes}}
|{{yes}}
|-
|{{rh}} | [[CP/M file system]]
| {{no}}
| {{no}}
| {{yes}}{{efn |Implemented in later versions as an extension}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[DECtape]]<ref>{{cite web
| url = http://bitsavers.trailing-edge.com/pdf/dec/pdp11/rt11/v5.6_Aug91/AA-PD6PA-TC_RT-11_Volume_and_File_Formats_Manual_Aug91.pdf
| title = RT–11 Volume and File Formats Manual
| publisher = Digital Equipment Corporation
| date = August 1991
| page = 1-26 .. 1-32
}}</ref>
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[Elektronika BK]] tape format
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
Line 1,170 ⟶ 1,179:
| {{yes}}
|-
|{{rh}} | Level-D
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[RT-11]]<ref>{{cite web
| url = http://bitsavers.trailing-edge.com/pdf/dec/pdp11/rt11/v5.6_Aug91/AA-PD6PA-TC_RT-11_Volume_and_File_Formats_Manual_Aug91.pdf
| title = RT–11 Volume and File Formats Manual
| publisher = Digital Equipment Corporation
| date = August 1991
| page = 1-4 .. 1-12
}}</ref>
| {{no}}
| {{no}}
| {{yes}} <small>(date only)</small>
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
|{{rh}} | Version 6 Unix file system (V6FS)<ref name="Unixv6">{{cite web
| url=http://www.utdallas.edu/~venky/os/Proj/disk.pdf
| title=Format of the Unix 6 file system
| accessdate=2016-02-21
}}</ref>
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | Version 7 Unix file system (V7FS)<ref name="Unixv7">See dinode structure on page 355 (''FILESYS(5)'') of {{cite web
| url=http://web.cuzuco.com/~cuzuco/v7/v7vol1.pdf
| title= Unix Programmers Manual
| publisher=Bell Telephone Laboratories
| ___location=Murray Hill, New Jersey
| edition=Seventh
| date=January 1979
| accessdate=2016-02-21
}}</ref>
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[exFAT]]
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[FAT12]]/[[FAT16]]/[[FAT32]]
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}{{efn |name=fat-ctime |Some FAT implementations, such as in Linux, show file modification timestamp (mtime) in the metadata change timestamp (ctime) field. This timestamp is however, not updated on file metadata change.}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}{{efn |name=note-22 |Particular [[Installable File System]] drivers and [[operating system]]s may not support extended attributes on FAT12 and FAT16. The OS/2 and Windows NT filesystem drivers for FAT12 and FAT16 support extended attributes (using a "EA DATA. SF" pseudo-file to reserve the clusters allocated to them). Other filesystem drivers for other operating systems do not.}}
| {{no}}
|-
|{{rh}} | [[High Performance File System|HPFS]]
| {{yes}}{{efn |name=note-14 |The ''f-node'' contains a field for a user identifier. This is not used except by [[OS/2|OS/2 Warp Server]], however.}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[NTFS]]
| {{yes}}
| {{yes}}{{efn |name=note-5 |NTFS [[access control list]]s can express any access policy possible using simple POSIX file permissions (and far more), but use of a POSIX-like interface is not supported without an add-on such as [[Services for UNIX]] or [[Cygwin]].}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}{{efn |As of Vista, NTFS has support for Mandatory Labels, which are used to enforce [[Mandatory Integrity Control]].<ref>{{cite web|url=http://msdn2.microsoft.com/en-us/library/bb648648.aspx|title=Mandatory Integrity Control|website=[[Microsoft Developer Network]]}}</ref>}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[ReFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{yes}}{{efn |Initially, ReFS lacked support for ADS, but Server 2012 R2 and up add support for ADS on ReFS}}
| {{yes}}{{efn |Data checksums not enabled by default}}
|-
|{{rh}} | [[Hierarchical File System|HFS]]
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[HFS Plus]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[Berkeley Fast File System|FFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[UFS1 (file system)|UFS1]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{
| {{no}}
| {{yes}}{{efn |name=note-33 |Access-control lists and MAC labels are layered on top of extended attributes.}}
| {{yes}}{{efn |name=note-33}}
| {{no}}{{efn |name=note-32 |Some operating systems implemented extended attributes as a layer over [[UFS1 (file system)|UFS1]] with a parallel backing file (e.g., FreeBSD 4.x).}}
| {{no}}
|-
|{{rh}} | [[UFS2 (file system)|UFS2]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-33}}
| {{yes}}{{efn |name=note-33}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[HAMMER (file system)|HAMMER]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
|-
|{{rh}} | [[Log-structured File System (BSD)|LFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[extended file system|ext]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[Xiafs]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[ext2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-23 |Some [[Installable File System]] drivers and [[operating system]]s may not support extended attributes, access control lists or security labels on these filesystems. Linux kernels prior to 2.6.x may either be missing support for these altogether or require a [[patch (computing)|patch]].}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[ext3]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[ext4]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{partial}}{{efn | Journal and metadata only<ref>{{cite web|title=Ext4 Metadata Checksums - Ext4|url=https://ext4.wiki.kernel.org/index.php/Ext4_Metadata_Checksums|website=ext4.wiki.kernel.org|language=en}}</ref>}}
|-
|{{rh}} | [[NOVA (filesystem)|NOVA]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
|{{rh}} | [[Lustre (file system)|Lustre]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[F2FS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[GPFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
|{{rh}} | [[Global File System|GFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[NILFS]]
| {{yes}}
| {{yes}}
| {{yes}}
Line 1,609 ⟶ 1,516:
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
|{{rh}} | [[ReiserFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[Reiser4]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[OCFS]]
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[OCFS2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[XFS]]
| {{yes}}
| {{yes}}
| {{partial}}{{efn |name=note-35 |Creation time stored since June 2015, xfsprogs version 3.2.3}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes
| {{yes}}{{efn |name=note-23}}
| {{yes}}
| {{partial}}{{efn |name=note-34 |Metadata checksums stored since June 2015, xfsprogs version 3.2.3}}
|-
|{{rh}} | [[JFS file system|JFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[QFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[Be File System|BFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[AdvFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
|-
|{{rh}} | [[Novell Storage Services|NSS]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-31 |The local time, timezone/[[UTC]] offset, and date are derived from the time settings of the reference/single timesync source in the NDS tree.}}
| {{yes}}{{efn |name=note-31}}
| {{yes}}
| {{yes}}{{efn |name=note-31}}
| {{yes}}
| {{dunno}}
| {{yes}}{{efn |name=note-19 |Novell calls this feature "multiple data streams". Published specifications say that NWFS allows for 16 attributes and 10 data streams, and NSS allows for unlimited quantities of both.}}{{efn |name=note-29 |Some file and directory metadata is stored on the NetWare server irrespective of whether Directory Services is installed or not, like date/time of creation, file size, purge status, etc; and some file and directory metadata is stored in [[Novell Directory Services|NDS/eDirectory]], like file/object permissions, ownership, etc.}}
| {{no}}
|-
|{{rh}} | [[NetWare File System|NWFS]]
| {{yes}}
| {{dunno}}
| {{yes}}{{efn |name=note-31}}
| {{yes}}{{efn |name=note-31}}
| {{yes}}
| {{yes}}{{efn |name=note-31}}
| {{yes}}
| {{dunno}}
| {{yes}}{{efn |name=note-19}}{{efn |name=note-29}}
| {{no}}
|-
|{{rh}} | [[ODS-5]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}{{efn |name=note-17 |Record Management Services (RMS) attributes include record type and size, among many others.}}
| {{no}}
|-
|{{rh}} | [[APFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{partial}}
|-
|{{rh}} | [[Veritas File System|VxFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes
| {{dunno}}
| {{yes}}{{efn |name=note-23}}
| {{no}}
|-
|{{rh}} | [[Universal Disk Format|UDF]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes
| {{no}}
|-
|{{rh}} | [[Fossil (file system)|Fossil]]
| {{yes}}
| {{yes}}{{efn |name=note-61 |File permission in [[9P (protocol)|9P]] are a variation of the traditional Unix permissions with some minor changes, e.g. the suid bit is replaced by a new 'exclusive access' bit.}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[ZFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-69 |Supported on FreeBSD and Linux implementations, support may not be available on all operating systems.}}
| {{yes}}{{efn |name=note-60 |Solaris "extended attributes" are really full-blown alternate data streams, in both the Solaris UFS and ZFS.}}
| {{yes}}
|-
|{{rh}} | [[Btrfs]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes
| {{yes}}
| {{yes}}
| {{yes}}{{efn | disabling copy-on-write (COW) to prevent fragmentation also disables checksumming}}
|-
|{{rh}} | [[MINIX file system|Minix V1]]
| {{yes}}
| {{yes}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[MINIX file system|Minix V2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[MINIX file system|Minix V3]]
| {{yes}}
| {{yes}}
| {{no}}
| {{
| {{
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[VMFS2]]
| {{
| {{
| {{no}}
| {{
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[VMFS3]]
| {{
| {{
| {{no}}
| {{yes}}
| {{yes}}
| {{
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[ISO 9660:1988]]
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[Rock Ridge]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn|Access times are preserved from the original file system at creation time, but Rock Ridge file systems themselves are read-only.}}
| {{yes}}
| {{no}}
| {{no}}{{efn|[[libburnia]] can backup and restore ACLs with file system creation and extraction programs, but no kernel support exists.}}
| {{no}}{{efn|name=note-78|[[libburnia]] can backup and restore extended attributes and MAC labels with file system creation and extraction programs, but no kernel support exists.}}
| {{no}}{{efn|name=note-78}}
| {{no}}
|-
|{{rh}} | [[Joliet (file system)|Joliet ("CDFS")]]
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[ISO 9660:1999]]
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[High Sierra Format|High Sierra]]
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
|{{rh}} | [[SquashFS]]
|{{yes}}
|{{yes}}
|{{yes}}
|{{yes}}
|{{yes}}
|{{no}}
|{{yes}}
|{{no}}
|{{yes}}
|{{no}}
|-class="sortbottom"
! File system
! Stores file owner
! [[POSIX]] file permissions
! Creation timestamps
! Last access/read timestamps
! Last metadata change timestamps
! Last archive timestamps
! [[Access control list]]s
! Security/ [[Mandatory access control|MAC]] labels
! [[Extended attribute]]s/ [[Fork (filesystem)|Alternate data streams/ forks]]
! Checksum/ [[Error-correcting code|ECC]]
|}</div>
== Features ==
===File capabilities===
<div style="overflow-x:auto">
{| class="wikitable sortable" style="width: auto; text-align: center; table-layout: fixed; margin: 0;"
! File system
! [[Hard link]]s
! [[Symbolic link]]s
! [[Journaling file system|Block journaling]]
! [[Journaling file system|Metadata-only journaling]]
! [[Case-sensitive]]
! [[Case-preserving]]
! [[File Change Log]]
! Internal snapshotting / branching
! [[Execute in place|XIP]]
! [[Filesystem-level encryption]]
! [[Data deduplication]]
! [[Checksum|Data checksums]]
|-
! [[DECtape]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
![[BeeGFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
|-
! Level-D
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[RT-11]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[APFS]]
| {{yes}}
| {{yes}}
| {{dunno}}<!-- APFS utilizes copy-on-write, but details about the exact approach beyond that are very vague -->
| {{dunno}}<!-- APFS utilizes copy-on-write, but details about the exact approach beyond that are very vague -->
| {{partial}}<!-- There are two variants of APFS, one that is case-sensitive, and one that is not. The non-case-sensitive variant is the default one for APFS in macOS 10.13+, while the case-sensitive variant is the default one for iOS 10.3+. -->
| {{yes}}
| {{dunno}}<!-- APFS utilizes copy-on-write, but details about the exact approach beyond that are very vague -->
| {{yes}}
| {{dunno}}
| {{yes}}
| {{partial}}<!-- Apple says that APFS does not support data deduplication because of its encryption capabilities, but it uses clone files to achieve essentially the same effect, so it's at least a partial here. -->
| {{no}}
|-
! Version 6 Unix file system (V6FS)
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! Version 7 Unix file system (V7FS)
| {{yes}}
| {{no}}{{efn |name=note-59 |System V Release 4, and some other [[Unix]] systems, retrofitted symbolic links to their versions of the [[Version 7 Unix]] file system, although the original version didn't support them.}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[exFAT]]
| {{no}}
| {{no}}
| {{no}}
| {{partial}} (with [[Transaction-Safe FAT File System|TexFAT]] only)
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[FAT12]]
| {{no}}
| {{no}}
| {{no}}
| {{partial}} (with [[TFAT12]] only)
| {{no}}
| {{partial}} (with [[VFAT]] LFNs only)
| {{no}}
| {{no}}
| {{no}}
| {{partial}} ([[DR-DOS]] with [[SECURITY.BIN|SECURITY]] only)
| {{no}}
| {{no}}
|-
! [[FAT16]] / [[FAT16B]] / [[FAT16X]]
| {{no}}
| {{no}}
| {{no}}
| {{partial}} (with [[TFAT16]] only)
| {{no}}
| {{partial}} (with [[VFAT]] LFNs only)
| {{no}}
| {{no}}
| {{no}}
| {{partial}} (DR-DOS with [[SECURITY.BIN|SECURITY]] only)
| {{no}}
| {{no}}
|-
! [[FAT32]] / [[FAT32X]]
| {{no}}
| {{no}}
| {{no}}?
| {{partial}} (with [[TFAT32]] only)
| {{no}}
| {{partial}} (with [[VFAT]] LFNs only)
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Global File System|GFS]]
| {{yes}}
| {{yes}}{{efn |Context based symlinks were supported in GFS, GFS2 only supports standard symlinks since the bind mount feature of the Linux VFS has made context based symlinks obsolete}}
| {{yes}}
| {{yes}}{{efn |Optional journaling of data}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[High Performance File System|HPFS]]
| {{no}}
| {{no}}
| {{no}}
Line 2,090 ⟶ 2,076:
| {{yes}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[NTFS]]
| {{yes}}
| {{yes}}{{efn |As of Windows Vista, NTFS fully supports symbolic links.<ref>{{cite magazine|url=https://technet.microsoft.com/en-us/magazine/7f4942ce-a782-49a7-bfbb-220337a0cd92|title=Windows Administration: Inside the Windows Vista Kernel: Part 1|author=Mark Russinovich|authorlink=Mark Russinovich|date=February 2007|magazine=[[Microsoft TechNet|TechNet]]}}</ref> NTFS 3.0 (Windows 2000) and higher can create ''junctions'', which allow entire directories (but not individual files) to be mapped to elsewhere in the directory tree of the same partition (file system). These are implemented through ''reparse points'', which allow the normal process of filename resolution to be extended in a flexible manner.}}
| {{no}}{{efn |name=note-37 |NTFS stores everything, even the file data, as meta-data, so its log is closer to block journaling.}}
| {{yes}}{{efn |name=note-37}} (2000)
| {{yes}}{{efn |name=note-36 |While NTFS itself supports case sensitivity, the Win32 environment subsystem cannot create files whose names differ only by case for compatibility reasons. When a file is opened for writing, if there is any existing file whose name is a case-insensitive match for the new file, the existing file is truncated and opened for writing instead of a new file with a different name being created. Other subsystems like e. g. [[Services for Unix]], that operate directly above the kernel and not on top of Win32 can have case-sensitivity.}}
| {{yes}}
| {{yes}}
| {{partial}}{{efn |name=note-93 |NTFS does not internally support snapshots, but in conjunction with the [[Volume Shadow Copy Service]] can maintain persistent block differential volume snapshots.}}
| {{dunno}}
| {{yes}}
| {{yes}}{{efn |name=note-NTFS-Dedup |Supported only on Windows Server SKUs. However, partitions deduplicated on Server can be used on Client.}}<ref>{{cite web|url=https://msdn.microsoft.com/en-us/library/hh769303(v=vs.85).aspx|title=About Data Deduplication}}</ref>
| {{no}}
|-
! [[HFS Plus]]
| {{yes}}<ref>{{cite web|last1=Siracusa|first1=John|title=Mac OS X 10.7 Lion: the Ars Technica review|url=https://arstechnica.com/gadgets/2011/07/mac-os-x-10-7/12/#hfs-problems|website=Ars Technica|accessdate=14 December 2017|quote=To keep track of hard links, HFS+ creates a separate file for each hard link inside a hidden directory at the root level of the volume.}}</ref>
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-48 |Metadata-only journaling was introduced in the Mac OS X 10.2.2 HFS Plus driver; journaling is enabled by default on Mac OS X 10.3 and later.}}
| {{partial}}{{efn |Although often believed to be case sensitive, HFS Plus normally is not. The typical default installation is case-preserving only. From Mac OS X 10.3 on the command ''newfs_hfs -s'' will create a case-sensitive new file system.<ref>{{man|8|newfs_hfs|Darwin}}</ref> HFS Plus version 5 optionally supports case-sensitivity. However, since case-sensitivity is fundamentally different from case-insensitivity, a new signature was required so existing HFS Plus utilities would not see case-sensitivity as a file system error that needed to be corrected. Since the new signature is 'HX', it is often believed this is a new filesystem instead of a simply an upgraded version of HFS Plus.<ref>{{cite web |publisher=Apple |url=https://developer.apple.com/documentation/MacOSX/Conceptual/BPFileSystem/Articles/Comparisons.html |title=File System Comparisons}} (hasn't been updated to discuss HFSX)</ref><ref>{{cite web |publisher=Apple |url=https://developer.apple.com/technotes/tn/tn1150.html |title=Technical Note TN1150: HFS Plus Volume Format}} (Very technical overview of HFS Plus and HFSX.)</ref>}}
| {{yes}}
| {{yes}}{{efn |Mac OS X Tiger (10.4) and late versions of Panther (10.3) provide file change logging (it's a feature of the file system software, not of the volume format, actually).<ref>[http://www.kernelthread.com/software/fslogger/ fslogger]</ref>}}
| {{no}}
| {{no}}
| {{no}}{{efn |name=note-77 |HFS+ does not actually encrypt files: to implement [[FileVault]], OS X creates an HFS+ filesystem in a sparse, encrypted disk image that is automatically mounted over the home directory when the user logs in.}}
| {{no}}
| {{no}}
|-
! [[Berkeley Fast File System|FFS]]
| {{yes}}
| {{yes
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[UFS1 (file system)|UFS1]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
|-
! [[UFS2 (file system)|UFS2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-66 |"[[Soft dependencies]]" ([[softdep]]) in [[NetBSD]], called "[[soft updates]]" in [[FreeBSD]] provide meta-data consistency at all times without double writes ([[journaling file system|journaling]])}} <ref>https://www.mckusick.com/softdep/suj.pdf</ref> {{efn|Journaled Soft Updates (SU+J) are the default as of FreeBSD 9.x-RELEASE <ref>https://wiki.freebsd.org/NewFAQs</ref><ref>https://www.freebsd.org/releases/9.0R/announce.html</ref>}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[HAMMER (file system)|HAMMER]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}} <!-- probably no? -->
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
|-
! [[Log-structured File System (BSD)|LFS]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-38 |UDF, LFS, and NILFS are [[log-structured file system]]s and behave as if the entire file system were a journal.}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Extended file system|ext]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
|-
! [[Xiafs]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[ext2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}{{efn |name=note-65 |Linux kernel versions 2.6.12 and newer.}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[ext3]]
| {{yes}}
| {{yes}}
| {{yes}} (2001) {{efn |name=note-62 |Off by default.}}
| {{yes}} (2001)
| {{yes}}
| {{yes}}
| {{no}}
Line 2,162 ⟶ 2,234:
| {{no}}
| {{no}}
| {{
|-
! [[ext4]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-62}}
| {{yes}}
| {{yes}}, optional <ref>{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=EXT4-Case-Insensitive-Linux-5.2|title=EXT4 Case-Insensitive Directories/File-Name Lookups Coming With Linux 5.2}}</ref>
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}, experimental <ref name="note-67">{{cite web |url=https://lwn.net/Articles/639427/ |title=Ext4 encryption}}</ref>
| {{no}}
| {{no}}
|-
! [[NOVA (filesystem)|NOVA]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{
|-
! [[F2FS]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-38}}
| {{no}}
| {{yes}}
| {{yes}}
Line 2,189 ⟶ 2,274:
| {{no}}
| {{no}}
| {{yes}}, experimental <ref name="note-68">{{cite web |url=https://lwn.net/Articles/677620/ |title=F2FS encryption}}</ref>
| {{no}}
| {{no}}
|-
! [[Lustre (file system)|Lustre]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-62}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[NILFS]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-38}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
! [[ReiserFS]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-44 |Full block journaling for ReiserFS was added to Linux 2.6.8.}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Reiser4]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{yes}}{{efn |name=note-50 |Reiser4 supports transparent compression and encryption with the ''cryptcompress'' plugin which is the default file handler in version 4.1.}}
| {{dunno}}
| {{no}}
|-
! [[OCFS]]
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[OCFS2]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[XFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-40 |Optionally no on IRIX.}}
| {{yes}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{no}}
| {{yes}}, experimental <ref>{{cite web |url=http://strugglers.net/~andy/blog/2017/01/10/xfs-reflinks-and-deduplication/|title=XFS, Reflinks and Deduplication}}</ref>
| {{no}}
|-
! [[JFS file system|JFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}} (1990)
| {{yes}}{{efn |name=note-30 |Particular [[Installable File System]] drivers and [[operating system]]s may not support case sensitivity for JFS. OS/2 does not, and Linux has a mount option for disabling case sensitivity.}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[QFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Be File System|BFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Novell Storage Services|NSS]]
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{yes}}{{efn |name=note-20 |Case-sensitivity/Preservation depends on client. Windows, DOS, and OS/2 clients don't see/keep case differences, whereas clients accessing via NFS or AFP may.}}
| {{yes}}{{efn |name=note-20}}
| {{yes}}{{efn |name=note-6 |The file change logs, last entry change timestamps, and other filesystem metadata, are all part of the extensive suite of auditing capabilities built into NDS/eDirectory called NSure Audit.<ref>[http://www.novell.com/documentation/nsureaudit/html/netware_event_data.htm Filesystem Events tracked by NSure]</ref>}}
| {{yes}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{no}}
|-
! [[NetWare File System|NWFS]]
| {{yes}}{{efn |name=note-53 |Available only in the "NFS" namespace.}}
| {{yes}}{{efn |name=note-53}}
| {{no}}
| {{no}}
| {{yes}}{{efn |name=note-20}}
| {{yes}}{{efn |name=note-20}}
| {{yes}}{{efn |name=note-6}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[ODS-2]]
| {{yes}}
| {{yes}}{{efn |name=note-18 |These are referred to as "aliases".}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[ODS-5]]
| {{yes}}
| {{yes}}{{efn |name=note-18}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Universal Disk Format|UDF]]
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-38}}
| {{yes}}{{efn |name=note-38}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Veritas File System|VxFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}{{efn |name=note-70 |VxFS provides an optional feature called "Storage Checkpoints" which allows for advanced file system snapshots.}}
| {{dunno}}
| {{no}}
| {{Yes}}
| {{no}}
|-
! [[Fossil (file system)|Fossil]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
|-
! [[ZFS]]
|
|
| {{yes}}{{efn |name=note-56 |ZFS is a transactional filesystem using copy-on-write semantics, guaranteeing an always-consistent on-disk state without the use of a traditional journal. However, it does also implement an intent log to provide better performance when synchronous writes are requested.}}
| {{no}}{{efn |name=note-56}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=zfscrypt |Applies to proprietary ZFS release 30 and ZFS On Linux. Encryption support is not yet available in all [[OpenZFS]] ports.<ref>{{cite web|title=How to Manage ZFS Data Encryption|url=http://www.oracle.com/technetwork/articles/servers-storage-admin/manage-zfs-encryption-1715034.html}}</ref><ref>{{cite web|title=Release zfs-0.8.0|url=https://github.com/zfsonlinux/zfs/releases/tag/zfs-0.8.0}}</ref><ref>{{cite web|title=Feature Flags - OpenZFS|url=http://open-zfs.org/wiki/Feature_Flags}}</ref>}}
| {{yes}}
| {{yes}}
|-
! [[Btrfs]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{dunno}}
| {{no}}, planned, not being developed (Nov, 2015)<ref>{{cite web|url=https://btrfs.wiki.kernel.org/index.php/FAQ|title=Btrfs FAQ|website=Btrfs Wiki}}</ref>
| {{yes}}
| {{yes}}
|-
! [[MINIX file system|Minix V1]]
|
|
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[MINIX file system|Minix V2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[MINIX file system|Minix V3]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[VMFS2]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[VMFS3]]
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[ReFS]]
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{yes}}{{efn |name=note-36}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{yes}}
| {{yes}}
|-
! [[ISO 9660]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}{{efn|name=note-79|Some file system creation implementations reuse block references and support deduplication this way. This is not supported by the standard, but usually works well due to the file system's read-only nature.}}
| {{no}}
|-
! [[Rock Ridge]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}{{efn|name=note-79}}
| {{no}}
|-
! [[Joliet (file system)|Joliet ("CDFS")]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}{{efn|name=note-79}}
| {{no}}
|-
! [[SquashFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
|- class="sortbottom"
! File system
! [[Hard link]]s
! [[Symbolic link]]s
! [[Journaling file system|Block journaling]]
! [[Journaling file system|Metadata-only journaling]]
! [[Case-sensitive]]
! [[Case-preserving]]
! [[File Change Log]]
! Internal snapshotting / branching
! [[Execute in place|XIP]]
! [[Filesystem-level encryption]]
! [[Data deduplication]]
! [[Checksum|Data checksums]]
|}</div>
===Resize
{| class="wikitable sortable" style="
|-
!scope="col"|File system
!scope="col"|Host OS
!scope="col"|Offline grow
!scope="col"|Online grow
!scope="col"|Offline shrink
!scope="col"|Online shrink
|-
!scope="row"|[[FAT16]] / [[FAT16B]] / [[FAT16X]]
|misc.||{{yes}}<ref name="libparted">With software based on [[GNU Parted]]</ref>||{{no}}||{{yes}}<ref name="libparted" />||{{no}}
|-
!scope="row"|[[FAT32]] / [[FAT32X]]
|misc.||{{yes}}<ref name="libparted" />||{{no}}||{{yes}}<ref name="libparted" />||{{no}}
|-
!scope="row"|[[exFAT]]
|misc.||{{no}}||{{no}}||{{no}}||{{no}}
|-
!scope="row"|[[NTFS]]
|Windows||{{yes}}||{{yes}}||{{yes}}||{{yes}}
|-
!scope="row"|[[ReFS]]
|Windows||{{dunno}}||{{yes}}||{{dunno}}||{{no}}
|-
!scope="row"|[[HFS Plus|HFS+]]
|macOS||{{no}}||{{yes}}||{{no}}||{{yes}}
|-
!scope="row"|[[APFS]]
|macOS||{{dunno}}||{{dunno}}||{{dunno}}||{{dunno}}
|-
!scope="row"|[[HFS Plus|HFS+]]
|Linux||{{no}}||{{no}}||{{no}}||{{no}}
|-
!scope="row"|[[SquashFS]]
|Linux||{{no}}||{{no}}||{{no}}||{{no}}
|-
!scope="row"|[[NOVA (filesystem)|NOVA]]
|Linux||{{no}}||{{no}}||{{no}}||{{no}}
|-
!scope="row"|[[JFS (file system)|JFS]]<ref>{{cite web|url=https://www.kernel.org/doc/Documentation/filesystems/jfs.txt|title=IBM's Journaled File System (JFS) for Linux}}</ref>
|Linux||{{yes}}||{{no}}||{{no}}||{{no}}
|-
!scope="row"|[[XFS]]<ref>{{cite web|url=https://docs.oracle.com/cd/E37670_01/E37355/html/ol_grow_xfs.html|title=Growing an XFS File System}}</ref>
|Linux||{{no}}||{{yes}}||{{no}}||{{no}}
|-
!scope="row"|[[Lustre (file system)|Lustre]]<ref name="wiki-faq-old">{{cite web|url=http://wiki.lustre.org/Frequently_Asked_Questions_(Old_Wiki)|title=Frequently Asked Questions (Old Wiki)|accessdate=5 May 2018}}</ref>
|Linux||{{dunno}}||{{yes}}||{{no}}||{{no}}
|-
!scope="row"|[[F2FS]]<ref>https://git.kernel.org/cgit/linux/kernel/git/jaegeuk/f2fs-tools.git/</ref>
|Linux||{{yes}}||{{no}}||{{no}}||{{no}}
|-
!scope="row"|[[NTFS]]<ref>{{cite web|url=http://linux.die.net/man/8/ntfsresize|title=<tt>ntfsresize(8)</tt>}}</ref>
|Linux||{{yes}}||{{no}}||{{yes}}||{{no}}
|-
!scope="row"|[[ext2]]<ref name="unix.com">{{man|8|resize2fs|Linux}}</ref>
|Linux||{{yes}}||{{no}}||{{yes}}||{{no}}
|-
!scope="row"|[[ext3]]<ref name="unix.com"/>
|Linux||{{yes}}||{{yes}}||{{yes}}||{{no}}
|-
!scope="row"|[[ReiserFS]]<ref>{{cite web|url=https://www.suse.com/documentation/sles11/stor_admin/data/biuymaa.html|title=Resizing File Systems}}</ref>
|Linux||{{yes}}||{{yes}}||{{yes}}||{{no}}
|-
!scope="row"|[[Reiser4]]<ref>{{cite web|url=https://reiser4.wiki.kernel.org/index.php/Resize_reiserfs|title=Resize reiserfs|website=Reiserfs wiki}}</ref>
|Linux||{{yes}}||{{yes}}||{{yes}}||{{no}}
|-
!scope="row"|[[ext4]]<ref name="unix.com"/>
|Linux||{{yes}}||{{yes}}||{{yes}}||{{no}}
|-
!scope="row"|[[Btrfs]]<ref>{{cite web|title=Just Enough Operating System (JeOS): Technical Information {{!}} SUSE|url=https://www.suse.com/products/server/technical-information/|website=www.suse.com|accessdate=28 April 2018|language=en}}</ref>
|Linux||{{yes}}||{{yes}}||{{yes}}||{{yes}}
|-
!scope="row"|[[NILFS]]<ref>{{cite web|url=http://nilfs.sourceforge.net/en/man8/nilfs-resize.8.html|title=<tt>nilfs-resize(8)</tt>}}</ref>
|Linux||{{no}}||{{yes}}||{{no}}||{{yes}}
|-
!scope="row"|[[ZFS]]
|misc.||{{yes}}||{{yes}}||{{no}}||{{partial}}<ref>Mirror and single-disk vdevs can be wholly removed from a pool, but not RAID-Z vdevs. {{cite web|title=OpenZFS 7614 - zfs device evacuation/removal|url=https://github.com/zfsonlinux/zfs/pull/6900}}</ref>
|-
!scope="row"|[[JFS (file system)|JFS2]]
|[[AIX]]||{{dunno}}||{{yes}}||{{dunno}}||{{yes}}
|-
!scope="row"|[[UFS2 (file system)|UFS2]]<ref>{{cite web|url=https://www.freebsd.org/doc/handbook/disks-growing.html|title=Resizing and Growing Disks}}</ref>
|FreeBSD||{{yes}}||{{yes}} (FreeBSD 10.0-RELEASE or later)||{{no}}||{{no}}
|-
!scope="row"|[[HAMMER (file system)|HAMMER]]
|DragonflyBSD||{{dunno}}||{{dunno}}||{{dunno}}||{{dunno}}
|}
<div style="overflow-x:auto">
{| class="wikitable sortable" style="width: auto; text-align: center; table-layout: fixed;"
! File system
![[
! Transparent compression
![[Block suballocation]]<!-- was Block fragmentation -->
! [[Tail packing]]
! [[extent (file systems)|Extents]]
! Variable file block size{{efn |name=note-41 |Variable block size refers to systems which support different block sizes on a per-file basis. (This is similar to [[extent (file systems)|extents]] but a slightly different implementational choice.) The current implementation in [[UFS2 (file system)|UFS2]] is read-only.}}
! [[Allocate-on-flush]]<!-- was Delayed allocation -->
!
! [[Trim (computing)|Trim]] support
|-
! [[DECtape]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
![[BeeGFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
|-
! Level-D
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
|-
! [[APFS]]
| {{yes}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{yes}}<ref>{{cite web |url=http://www.zdnet.com/article/wwdc-2017-macoss-new-file-system/|title=Mac users, meet APFS: macOS's new file system - ZDNet}}</ref><ref>{{cite web |url=https://developer.apple.com/library/content/documentation/FileManagement/Conceptual/APFS_Guide/FAQ/FAQ.html|title=Apple File System Guide - FAQ}}</ref>
|-
! Version 6 Unix file system (V6FS)
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! Version 7 Unix file system (V7FS)
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[exFAT]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
! [[FAT12]]
| {{partial}} (only inside of compressed volumes)<ref name="CVF808"/>
| {{partial}}{{efn |name=note-51}}
| {{partial}} (only inside of [[Stacker 3]]/[[Stacker 4|4]] and [[DriveSpace 3]] compressed volumes<ref name="DMSDOS">{{cite web |title=DMSDOS CVF module |type=dmsdoc.doc |version=0.9.2.0 |date=1998-11-19 |url=http://cmp.felk.cvut.cz/~pisa/dmsdos/dmsdos.html |access-date=2016-11-01 |dead-url=no |archive-url=https://web.archive.org/web/20161102123812/http://cmp.felk.cvut.cz/~pisa/dmsdos/dmsdos.html |archive-date=2016-11-02 |quote=Usually all data for one cluster are stored in contiguous sectors, but if the filesystem is too fragmented there may not be a 'free hole' that is large enough for the data. […] Drivespace 3 and Stacker know a hack for that situation: they allow storing the data of one cluster in several fragments on the disk.}}</ref>)
| {{no}}
| {{partial}} (only inside of compressed volumes)<ref name="CVF814"/>
| {{no}}
| {{no}}
| {{no}}
| {{yes}} (Linux)
|-
! [[FAT16]] / [[FAT16B]] / [[FAT16X]]
| {{partial}} (only inside of compressed volumes)<ref name="CVF808">{{cite web|url=http://www.techhelpmanual.com/808-cvf_region__mdfat.html|title=CVF Region: MDFAT}}</ref>
| {{partial}}{{efn |name=note-51 |[[SuperStor]] in [[DR DOS 6.0]], [[PalmDOS 1.0]], [[PC DOS 6.1]] and [[PC DOS 6.3|6.3]], [[Stacker]] in [[Novell DOS 7]], [[OpenDOS 7.01]], [[DR-DOS 7.02]] (and higher), and [[PC DOS 7.0]] (and higher), [[DoubleSpace]] in [[MS-DOS 6.0]] and [[MS-DOS 6.2|6.20]], and [[DriveSpace]] in [[MS-DOS 6.22]] and [[Windows 95]], [[Windows 98|98]] and [[Windows Me|Me]] are [[disk compression]] schemes for [[File Allocation Table|FAT]], but are not supported for other operating systems.}}
| {{partial}} (only inside of [[Stacker 3]]/[[Stacker 4|4]] and [[DriveSpace 3]] compressed volumes<ref name="DMSDOS"/>)
| {{no}}
| {{partial}} (only inside of compressed volumes)<ref name="CVF814">{{cite web|url=http://www.techhelpmanual.com/814-mapping_dos_fat_to_mdfat.html|title=Mapping DOS FAT to MDFAT}}</ref>
| {{no}}
| {{no}}
| {{no}}
| {{yes}} (Linux)
|-
! [[FAT32]] / [[FAT32X]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}} (Linux)
|-
! [[Global File System|GFS]]
| {{yes}}
| {{no}}
| {{no}}
| {{partial}}{{efn |Only for "stuffed" inodes}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}}
|-
! [[High Performance File System|HPFS]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[NTFS]]
| {{yes}}
| {{yes}}
| {{partial}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}} (NT 6.1 + newer)
|-
! [[HFS Plus]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}} (macOS)
|-
! [[Berkeley Fast File System|FFS]]
| {{yes}}
| {{no}}
| {{yes2}} 8:1{{efn |name=note-45 |Other block:fragment size ratios supported; 8:1 is typical and recommended by most implementations.}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[UFS1 (file system)|UFS1]]
| {{yes}}
| {{no}}
| {{yes2}} 8:1{{efn |name=note-45}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{
|-
! [[UFS2 (file system)|UFS2]]
| {{yes}}
| {{no}}
| {{yes2}} 8:1{{efn |name=note-45}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{yes}}<ref>https://svnweb.freebsd.org/base?view=revision&revision=216796</ref><ref>https://www.freebsd.org/cgi/man.cgi?query=newfs&sektion=8&manpath=FreeBSD+8.4-RELEASE</ref>
|-
! [[Log-structured File System (BSD)|LFS]]
| {{yes}}
| {{no}}
| {{yes2}} 8:1{{efn |name=note-45}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
|-
! [[Extended file system|ext]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Xiafs]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[ext2]]
| {{yes}}
| {{no}}{{efn |name=note-49 |[[e2compr]], a set of [[patch (computing)|patches]] providing block-based [[data compression|compression]] for ext2, has been available since 1997, but has never been merged into the mainline Linux kernel.}}
| {{no}}{{efn |name=note-47 |Fragments were planned, but never actually implemented on ext2 and ext3.}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
! [[ext3]]
| {{yes}}
| {{no}}
| {{no}}{{efn |name=note-47}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
! [[ext4]]
| {{yes}}
| {{no}}
| {{no}}{{efn |name=note-47}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
|-
! [[NOVA (filesystem)|NOVA]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
|-
! [[F2FS]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{partial}}{{efn |name=note-75 | Stores one largest extent in disk, and caches multiple extents in DRAM dynamically.}}
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}<ref>{{cite web |url=https://lists.gt.net/linux/kernel/2012038#2012038 |title=F2FS: Introduce FITRIM in f2fs_ioctl |author=Jaeguk Kim |date=2014-09-22}}</ref>
|-
! [[Lustre (file system)|Lustre]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
|-
! [[NILFS]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{dunno}}
|-
! [[ReiserFS]]
| {{yes}}
| {{no}}
| {{yes}}{{efn |name=note-73 |Tail packing is technically a special case of block suballocation where the suballocation unit size is always 1 byte.}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[Reiser4]]
| {{yes}}
| {{yes}}{{efn |name=note-50}}
| {{yes}}{{efn |name=note-73}}
| {{yes}}
| {{yes}}{{efn |name=note-39 |In "extents" mode.}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
|-
! [[OCFS]]
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[OCFS2]]
| {{yes}}
| {{no}}
| {{
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[XFS]]
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}, on request<ref>{{cite web |url=https://www.phoronix.com/scan.php?page=news_item&px=XFS-Linux-4.9-Shared-Extents|title=XFS Adds Shared Data Extents For Linux 4.9}}</ref>
| {{yes}} (Linux)
|-
! [[JFS (file system)|JFS]]
| {{yes}}
| {{yes2}} only in JFS1 on AIX<ref>{{cite web |title=AIX documentation: JFS data compression |publisher=IBM |url=http://publib.boulder.ibm.com/infocenter/pseries/v5r3/topic/com.ibm.aix.baseadmn/doc/baseadmndita/jfsdatacomp.htm}}</ref>
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}} (Linux)
|-
! [[QFS]]
| {{dunno}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[Be File System|BFS]]
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}} ([[Haiku (operating system)|Haiku]])
|-
! [[Novell Storage Services|NSS]]
| {{dunno}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[NetWare File System|NWFS]]
| {{dunno}}
| {{yes}}
| {{yes}}{{efn |name=note-42 |Each possible size (in sectors) of file tail has a corresponding suballocation block chain in which all the tails of that size are stored. The overhead of managing suballocation block chains is usually less than the amount of block overhead saved by being able to increase the block size but the process is less efficient if there is not much free disk space.}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[ODS-5]]
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[Veritas File System|VxFS]]
| {{yes}}
| {{no}}
| {{dunno}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[Universal Disk Format|UDF]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{dunno}}{{efn |name=note-46 |Depends on UDF implementation.}}
| {{dunno}}
| {{no}}
|-
! [[Fossil (file system)|Fossil]]
| {{dunno}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{
| {{
| {{dunno}}
| {{dunno}}
|-
! [[ZFS]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{
| {{
| {{yes}}
| {{yes}}
| {{yes}} (FreeBSD, illumos)
|-
! [[Btrfs]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{
| {{
| {{yes}}
|-
! [[VMFS2]]
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{
| {{
|-
! [[VMFS3]]
| {{yes}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{
|-
! [[ReFS]]
| {{yes}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{dunno}}
| {{yes}}
| {{
|-
! [[ISO 9660]]
| {{no}}
| {{no}}{{efn|name=note-80|Linux supports the zisofs extension that allows per-file compression, and file system creation tools may support creating such images. zisofs images are incompatible on non-Linux OSes.}}
| {{
| {{
| {{yes}}{{efn|name=note-81|ISO 9660 Level 3 only}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Rock Ridge]]
| {{no}}
| {{no}}{{efn|name=note-80}}
| {{no}}
| {{no}}
| {{yes}}{{efn|name=note-81}}
| {{no}}
| {{no}}
| {{no}}
| {{
|-
! [[Joliet (file system)|Joliet ("CDFS")]]
| {{no}}
| {{no}}{{efn|name=note-80}}
| {{no}}
| {{no}}
| {{yes}}{{efn|name=note-81}}
| {{
| {{
| {{no}}
| {{no}}
|-
! [[SquashFS]]
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-class="sortbottom"
! File system
![[Sparse file]]s
! Transparent compression
![[Block suballocation]]<!-- was Block fragmentation -->
! [[Tail packing]]
! [[Extent (file systems)|Extents]]
! Variable file block size{{efn |name=note-41}}
! [[Allocate-on-flush]]<!-- was Delayed allocation -->
! [[Copy on write]]
! [[Trim (computing)|Trim]] support
|}
<
<div style="overflow-x:auto">
{| class="wikitable sortable" style="width: auto; text-align: center; table-layout: fixed; margin: 0;"
! File system
! [[
!
! [[Windows NT]]
! [[Linux]]
! [["classic" Mac OS]]
! [[macOS]]
! [[FreeBSD]]
!
! [[BeOS]]
! [[Minix]]
! [[Solaris (operating system)|Solaris]]
!
|-
! [[APFS]]
| {{no}}
| {{no}}
| {{no}}
| {{partial}} (read-only with apfs-fuse<ref>https://github.com/sgan81/apfs-fuse</ref> or linux-apfs<ref>https://github.com/eafer/linux-apfs</ref>)
| {{no}}
| {{yes}} <br />(Since macOS Sierra)
| {{no}}
| {{no}}
| {{no}}
| {{
| {{
| {{no}}
|-
! [[BeeGFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{no}}
| {{
| {{
| {{dunno}}
| {{dunno}}
| {{no}}
|-
! [[DECtape]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{
| {{
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! Level-D
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
| {{
| {{
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[RT-11]]
| {{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}}
|-
! Version 7 Unix file system (V7FS)
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{
| {{
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[exFAT]]
| {{no}}
| {{no}}
| {{yes}} (installable drivers for [[Windows XP]], [[Windows Server 2003|2003]]. Included with [[Windows Vista]] SP1 and newer.)
| {{yes}} (available as a kernel module or [[Filesystem in Userspace|FUSE]] driver)
| {{no}}
| {{yes}}
| {{yes}} (available as a [[Filesystem in Userspace|FUSE]] driver)
| {{no}}
| {{
| {{
| {{yes}} (available as a [[Filesystem in Userspace|FUSE]] driver)
| {{no}}
|-
! [[FAT12]]
| {{yes}}
| {{yes}}
| {{
| {{
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{partial}} (via dosdir, dosread, doswrite)
| {{yes}}
| {{dunno}}
|-
! [[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}}
| {{
| {{
| {{partial}} (via dosdir, dosread, doswrite, not FAT16X)
| {{yes}}
| {{dunno}}
|-
! [[FAT32]] / [[FAT32X]]
| {{yes}} (from DOS 7.10)
| {{yes}} (from [[Windows 95 OSR2]])
| {{yes}} (from [[Windows 2000]])
| {{yes}}
| {{yes}}?<!-- really? -->
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{yes}}
| {{dunno}}
|-
! [[Global File System|GFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[High Performance File System|HPFS]]
| {{partial}} (with third-party drivers)
| {{no}}
| {{partial}} (with [[Windows NT 3.1|NT 3.1]] to [[Windows NT 4|4.0]] only)
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{yes}} (from [[OS/2 1.2]])
| {{dunno}}
| {{no}}
| {{dunno}}
| {{dunno}}
|-
! [[NTFS]]
| {{partial}} (with third-party drivers)
| {{yes}} (with 3rd-party drivers like [[Paragon NTFS for Win98]], [[DiskInternals NTFS Reader]])
| {{yes}}
| {{yes}} with [[ntfs-3g]]
| {{no}}
| {{yes}} natively read only, write support with [[Paragon NTFS]] or [[ntfs-3g]]
| {{yes}} with [[ntfs-3g]]
| {{dunno}}
| {{yes}} with [[ntfs-3g]]
| {{no}}
| {{yes}} with [[ntfs-3g]]
| {{dunno}}
|-
! Apple [[Hierarchical File System|HFS]]
| {{no}}
| {{no}}
| {{yes}} with Paragon HFS+ <ref name="Paragon HFS">{{cite web |title=Paragon HFS+ for Windows 10 |url=http://www.paragon-software.com/home/hfs-windows/download.html}}</ref>
| {{yes}}
| {{yes}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! Apple [[HFS Plus]]
| {{no}}
| {{no}}
| {{yes}} with Paragon HFS+ <ref name="Paragon HFS"/>
| {{partial}} - writing support only to unjournalled FS
| {{yes}} from [[Mac OS 8.1]]
| {{yes}}
| {{no}}
| {{dunno}}
| {{yes2|with addon}}
| {{no}}
| {{dunno}}
| {{no}}
|-
! [[Berkeley Fast File System|FFS]]
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[UFS1 (file system)|UFS1]]
| {{no}}
| {{no}}
| {{partial}} (with [[ufs2tools]], read only)
| {{partial}} - read only
| {{dunno}}
| {{yes}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[UFS2 (file system)|UFS2]]
| {{no}}
| {{no}}
| {{partial}} (with [[ufs2tools]], read only)
| {{yes}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[Log-structured File System (BSD)|LFS]]
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[Extended file system|ext]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}} - until 2.1.20
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{
| {{no}}
| {{no}}
| {{no}}
|-
! [[Xiafs]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}} - until 2.1.20<br />
Experimental port available to 2.6.32 and later <ref name="Porting an Ancient Filesystem to Modern Linux">{{cite web |title=Porting an Ancient Filesystem to Modern Linux |website=Time To Pull The Plug |url=http://time.to.pullthepl.ug/blog/2013/6/24/porting-an-ancient-filesystem-to-modern-linux/}}</ref><ref name="Github modern-xiafs">{{cite web |title=A port of the xiafs filesystem to modern Linux kernels. |website=Github (cdtk) |url=https://github.com/ctdk/modern-xiafs}}</ref>
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[ext2]]
| {{no}}
| {{no}}
| {{yes}} with Paragon ExtFS <ref name="Paragon ExtFS for Windows">{{cite web |title=Paragon ExtFS for Windows |url=https://www.paragon-software.com/home/extfs-windows}}</ref> or partial with Ext2 IFS<ref name="Ext2 IFS for Windows">{{cite web |title=FAQ |website=Ext2 Installable File System For Windows |url=http://www.fs-driver.org/faq.html}} (Provides kernel level read/write access to Ext2 and Ext3 volumes in Windows NT4, 2000, XP and Vista.)</ref> or ext2fsd<ref name="Ext2fs Driver">{{cite web |last1=Branten |first1=Bo |url=http://www.ext2fsd.com/ |title=Ext2Fsd Project: Open source ext3/4 file system driver for Windows (2K/XP/WIN7/WIN8) |access-date=2012-07-24 |archive-url=https://web.archive.org/web/20120723091043/http://www.ext2fsd.com/ |archive-date=2012-07-23 |dead-url=yes }}</ref>
| {{
| {{
| {{yes}} with Paragon ExtFS <ref name="Paragon ExtFS for Mac">{{cite web |title=Paragon ExtFS for Mac |url=https://www.paragon-software.com/ufsdhome/ru/extfs-mac}}</ref> or [[ext2fsx]]
| {{yes}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[ext3]]
| {{no}}
| {{no}}
| {{yes}} with Paragon ExtFS <ref name="Paragon ExtFS for Windows"/> or partial with Ext2 IFS<ref name="Ext2 IFS for Windows"/> or ext2fsd<ref name="Ext2fs Driver"/>
| {{yes}}
| {{partial}} (read only){{citation needed|date=October 2016}}
| {{yes}} with Paragon ExtFS <ref name="Paragon ExtFS for Mac"/> or partial with [[ext2fsx]] (journal not updated on writing)
| {{partial}} (read-only)<ref name="ext3">{{cite web |title=FreeBSD Handbook |url=https://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/filesystems-linux.html}}</ref><ref name="ext3_2">{{cite web |title=Debian GNU/kFreeBSD |url=https://wiki.debian.org/Debian_GNU/kFreeBSD_FAQ#Q._Can_I_share_partitions_between_GNU.2FLinux_and_GNU.2FkFreeBSD.3F}}</ref>
| {{no}}
| {{yes2|with addon}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[ext4]]
| {{
| {{no}}
| {{yes}} with Paragon ExtFS <ref name="Paragon ExtFS for Windows"/> or partial with Ext2 IFS<ref name="Ext2 IFS for Windows"/> or ext2fsd<ref name="Ext2fs Driver"/>
| {{yes}}
| {{
| {{yes}} with Paragon ExtFS <ref name="Paragon ExtFS for Mac"/>
| {{partial}} support in kernel since version 10.1 (read-only)<ref name="ext3"/><ref name="ext3_2"/>
| {{no}}
| {{yes2|with addon}}
| {{dunno}}
| {{dunno}}
| {{
|-
! [[NOVA (filesystem)|NOVA]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[Lustre (file system)|Lustre]]
| {{
| {{no}}
| {{no}}
| {{yes}}<ref name="lustre">{{cite web |title=Lustre Wiki |url=http://wiki.lustre.org/index.php?title=Main_Page}}</ref>
| {{dunno}}
| {{dunno}}
| {{
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[NILFS]]
| {{no}}
| {{no}}
| {{dunno}}
| {{yes}} as an external kernel module
| {{dunno}}
| {{dunno}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[F2FS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[ReiserFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{partial}} - Read Only from 6.0 to 10.x<ref>{{Cite web |url=https://www.freebsd.org/cgi/man.cgi?query=reiserfs&apropos=0&sektion=0&manpath=FreeBSD+10.4-RELEASE&arch=default&format=html |title=FreeBSD 10.4 MAN page - reiserfs |website=www.freebsd.org |access-date=2019-08-05}}</ref> and dropped in 11.0<ref>{{Cite web |url=https://www.linuxquestions.org/questions/%2Absd-17/freebsd-11-and-reiserfs-4175595198/ |title=FreeBSD 11 and Reiserfs |date=2016-12-19 |website=www.linuxquestions.org |language=en |access-date=2019-08-05}}</ref><ref>{{Cite web |url=https://marc.info/?l=freebsd-commits-all&m=146349940607224&w=2 |title='svn commit: r300062 - in head/sys: gnu/fs modules modules/reiserfs' - MARC |website=marc.info |access-date=2019-08-05}}</ref>
| {{dunno}}
| {{yes2|with addon}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[Reiser4]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}} with a kernel patch
| {{dunno}}
| {{dunno}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! SpadFS
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{no}}
| {{dunno}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|-
! [[OCFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[OCFS2]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[XFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{partial}}
| {{dunno}}
| {{partial|with addon (read only)}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[JFS (file system)|JFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[QFS]]
| {{no}}
| {{no}}
| {{no}}
| {{partial}} - client only<ref>{{cite web |url=https://docs.oracle.com/cd/E22586_01/html/E22570/gledk.html |title=About Shared File Systems and the Linux Client - Sun QFS and Sun Storage Archive Manager 5.3 Installation Guide |accessdate=2016-03-14}}</ref>
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[Be File System]]
| {{no}}
| {{no}}
| {{no}}
| {{partial}} - read-only
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[Novell Storage Services|NSS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}} via EVMS{{efn |name=EVMS |Supported using only EVMS; not currently supported using LVM}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{
|-
! [[NetWare File System|NWFS]]
| {{partial}} (with Novell drivers)
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{no}}
| {{dunno}}
|
| {{dunno}}
| {{dunno}}
|-
! [[ODS-2]]
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[ODS-5]]
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[Universal Disk Format|UDF]]
| {{no}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{
| {{yes}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[Veritas File System|VxFS]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[Fossil (file system)|Fossil]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}{{efn |name=fossil-p9p |Provided in [[Plan 9 from User Space]]}}
| {{no}}
| {{yes}}{{efn |name=fossil-p9p}}
| {{yes}}{{efn |name=fossil-p9p}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}{{efn |name=fossil-p9p}}
| {{dunno}}
|-
! [[ZFS]]
| {{no}}
| {{no}}
| {{yes}}<ref>{{cite web|title=OpenZFS on Windows|url=https://openzfsonwindows.org/}}</ref>
| {{yes}} with [[Filesystem in Userspace|FUSE]]<ref name="zfs on fuse">{{cite web |title=ZFS Filesystem for FUSE/Linux |website=Wizy Wiki |date=30 November 2009 |url=http://www.wizy.org/wiki/ZFS_on_FUSE |archive-url=https://web.archive.org/web/20130513101601/http://www.wizy.org/wiki/ZFS_on_FUSE |archive-date=13 May 2013}}</ref> or as an external kernel module<ref name="ZoL">{{cite web |title=ZFS on Linux |url=http://zfsonlinux.org/ |publisher=Lawrence Livermore National Laboratory}}</ref>
| {{no}}
| {{yes}} with Read/Write Developer Preview<ref name="zfs on mac os x">{{cite web |last1=Kim |first1=Arnold |date=4 October 2007 |url=http://www.macrumors.com/2007/10/04/apple-seeds-zfs-read-write-developer-preview-1-1-for-leopard/ |title=Apple Seeds ZFS Read/Write Developer Preview 1.1 for Leopard |website=Mac Rumors}}</ref>
| {{yes}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
|-
! [[Btrfs]]
| {{no}}
| {{no}}
| {{Partial}} with WinBtrfs<ref name="Github btrfs">{{cite web |title=WinBtrfs |website=Github (maharmstone) |url=https://github.com/maharmstone/btrfs}}</ref>
| {{yes}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[VMFS2]]
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[VMFS3]]
| {{no}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{no}}
| {{no}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[IBM HFS]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
! [[IBM zFS]]
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
|-
! [[ReFS]]
| {{no}}
| {{no}}
| {{yes}} (from [[Windows Server 2012]] and from [[Windows 8.1]])
| {{Partial}} - with Paragon ReFS for Linux
| {{dunno}}
| {{dunno}}
| {{dunno}}
| {{
|
| {{dunno}}
| {{dunno}}
| {{dunno}}
|-
! [[ISO 9660]]
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
|-
! [[Rock Ridge]]
| {{no}}
| {{no}}
| {{no}}
| {{yes}}
| {{no}}
| {{yes}}
| {{yes}}
| {{no}}
| {{no}}
| {{yes}}
| {{yes}}
| {{dunno}}
|-
! [[Joliet (file system)|Joliet ("CDFS")]]
| {{no}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{yes}}
| {{dunno}}
| {{yes}}
| {{dunno}}
|-
! [[SquashFS]]
| {{no}}
| {{no}}
| {{partial}} (There are ports of unsquashfs and mksquashfs.)
| {{yes}}
| {{no}}
| {{partial}} (There are ports of unsquashfs and mksquashfs.)
| {{partial}} (There are ports of unsquashfs and mksquashfs and fusefs-port.<ref>{{cite web|url=http://www.freshports.org/sysutils/squashfs-tools/|title=squashfs-tools|website=Freshports}}</ref><ref>{{cite web|url=http://www.freshports.org/sysutils/fusefs-squashfuse/|title=fusefs-squashfuse|website=Freshports}}</ref>)
| {{no}}
| {{no}}
| {{no}}
| {{no}}
| {{no}}
|- class="sortbottom"
! File system
! [[DOS]]
! [[Windows 9x]]
! [[Windows NT]]
! [[Linux]]
! [["classic" Mac OS]]
! [[macOS]]
! [[FreeBSD]]
! [[OS/2]]
! [[BeOS]]
! [[Minix]]
! [[Solaris (operating system)|Solaris]]
! [[z/OS]]
|}</div>
== Notes ==
{{notelist|30em}}
|