The following tables compare general and technical information for a number of computerfile systems.
| File system | Stores file owner | POSIX file permissions | Creation timestamps | Last access/ read timestamps | Last metadata change timestamps | Last archive timestamps | Security/ MAC labels | |||
|---|---|---|---|---|---|---|---|---|---|---|
| bcachefs | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes |
| BeeGFS | Yes | Yes | No | Yes | Yes | No | Yes | ? | Yes | Yes |
| CP/M file system | No | No | Yes[c] | No | No | No | No | No | No | No |
| DECtape[8] | No | No | Yes | No | No | No | No | No | No | No |
| Elektronika BK tape format | No | No | No | No | No | No | No | No | No | Yes |
| Level-D | Yes | Yes | Yes | Yes(date only) | Yes | Yes | Yes(FILDAE) | No | No | No |
| RT-11[9] | No | No | Yes(date only) | No | No | No | No | No | No | Yes |
| Version 6 Unix file system (V6FS)[10] | Yes | Yes | No | Yes | No | No | No | No | No | No |
| Version 7 Unix file system (V7FS)[11] | Yes | Yes | No | Yes | No | No | No | No | No | No |
| exFAT | No | No | Yes | Yes | No | No | No | No | No | No |
| FAT12/FAT16/FAT32 | No | No | Yes | Yes | No[d] | No | No | No | No[e] | No |
| HPFS | Yes[f] | No | Yes | Yes | No | No | No | ? | Yes | No |
| NTFS | Yes | Yes[g] | Yes | Yes | Yes | No | Yes | Yes[h] | Yes | No |
| ReFS | Yes | Yes | Yes | Yes | Yes | No | Yes | ? | Yes[i] | Yes |
| HFS | No | No | Yes | No | No | Yes | No | No | Yes | No |
| HFS Plus | Yes | Yes | Yes | Yes | Yes | Yes | Yes | ? | Yes | No |
| FFS | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| UFS1 | Yes | Yes | No | Yes | Yes | No | Yes[j] | Yes[j] | No[k] | No |
| UFS2 | Yes | Yes | Yes | Yes | Yes | No | Yes[j] | Yes[j] | Yes | Partial |
| HAMMER | Yes | Yes | Yes | Yes | Yes | ? | Yes | Yes | No | Yes |
| HAMMER2 | Yes | Yes | ? | ? | ? | ? | ? | ? | ? | ? |
| LFS | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| EROFS | Yes | Yes | No | No | Yes | No | Yes | Yes | Yes | No |
| ext | Yes | Yes | No | No | No | No | No | No | No | No |
| Xiafs | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| ext2 | Yes | Yes | No | Yes | Yes | No | Yes[l] | Yes[l] | Yes | No |
| ext3 | Yes | Yes | No | Yes | Yes | No | Yes[l] | Yes[l] | Yes | No |
| ext4 | Yes | Yes | Yes | Yes | Yes | No | Yes[l] | Yes[l] | Yes | Partial[m] |
| NOVA | Yes | Yes | Yes | Yes | Yes | No | No | No | No | Yes |
| Lustre | Yes | Yes | No | Yes | Yes | No | Yes | Yes | Yes | No |
| F2FS | Yes | Yes | Yes | Yes | Yes | No | Yes[l] | Yes[l] | Yes | No |
| GPFS | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes |
| GFS | Yes | Yes | No | Yes | Yes | No | Yes[l] | Yes[l] | Yes | No |
| NILFS | Yes | Yes | Yes | No | Yes | No | No | No | No | Yes |
| ReiserFS | Yes | Yes | No | Yes | Yes | No | Yes[l] | Yes[l] | Yes | No |
| Reiser4 | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| OCFS | No | Yes | No | No | Yes | Yes | No | No | No | No |
| OCFS2 | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| XFS | Yes | Yes | Yes[n] | Yes | Yes | No | Yes | Yes[l] | Yes | Yes |
| JFS | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | No |
| QFS | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | No |
| BFS | Yes | Yes | Yes | No | No | No | No | No | Yes | No |
| AdvFS | Yes | Yes | No | Yes | Yes | No | Yes | No | Yes | No |
| NSS | Yes | Yes | Yes[o] | Yes[o] | Yes | Yes[o] | Yes | ? | Yes[p][q] | No |
| NWFS | Yes | ? | Yes[o] | Yes[o] | Yes | Yes[o] | Yes | ? | Yes[p][q] | No |
| Files-11 ODS-1[15] | Yes | Yes | Yes | No | No | No | No | No | Yes[r] | No |
| Files-11 ODS-2[16] | Yes | Yes | Yes | No | No | Yes | Yes | ? | Yes[r] | No |
| Files-11 ODS-5 | Yes | Yes | Yes | ? | ? | Yes | Yes | ? | Yes[r] | No |
| APFS | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
| VxFS | Yes | Yes | Yes | Yes | Yes | No | Yes | ? | Yes[l] | No |
| UDF | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes |
| Fossil | Yes | Yes[s] | No | Yes | Yes | No | No | No | No | No |
| ZFS | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes[t] | Yes[u] | Yes |
| Btrfs | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes | Yes |
| Minix V1 | Yes | Yes | No | No | No | No | No | No | No | No |
| Minix V2 | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| Minix V3 | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| VMFS2 | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| VMFS3 | Yes | Yes | No | Yes | Yes | No | No | No | No | No |
| ISO 9660:1988 | No | No | Yes | No | No | No | No | No | No | No |
| ISO 9660:Rock Ridge extension | Yes | Yes | No | Yes[v] | Yes | No | No[w] | No[x] | No[x] | No |
| ISO 9660:Joliet extension | No | No | Yes | No | No | No | No | No | No | No |
| ISO 9660:1999 | No | No | Yes | No | No | No | No | No | No | No |
| High Sierra | No | No | Yes | No | No | No | No | No | No | No |
| SquashFS | Yes | Yes | No | No | Yes | No | No | Yes | Yes | No |
| BlueStore/CephFS | Yes | Yes | Yes | Yes | ? | No | Yes | Yes | Yes | Yes |
| File system | Stores file owner | POSIX file permissions | Creation timestamps | Last access/ read timestamps | Last metadata change timestamps | Last archive timestamps | Security/ MAC labels |
All widely used file systems record a last modified time stamp (also known as "mtime"). It is not included in the table.
Individual file systems may record additional special types of date and time stamps. For example, the specification ofISO 9660 includes a "File Expiration Date and Time" and a "File Effective Date and Time".[17]
| File system | Hard links | Symbolic links | Block journaling | Metadata-only journaling | Case-sensitive | Case-preserving | File Change Log | XIP |
|---|---|---|---|---|---|---|---|---|
| DECtape | No | No | No | No | No | No | No | No |
| BeeGFS | No | Yes | Yes | Yes | Yes | Yes | No | No |
| Level-D | No | No | No | No | No | No | No | No |
| RT-11 | No | No | No | No | No | No | No | No |
| APFS | Yes | Yes | ? | ? | Optional[y] | Yes | ? | ? |
| Version 6 Unix file system (V6FS) | Yes | No | No | No | Yes | Yes | No | No |
| Version 7 Unix file system (V7FS) | Yes | No[z] | No | No | Yes | Yes | No | No |
| exFAT | No | No | No | Partial (withTexFAT only) | No | Yes | No | No |
| FAT12 | No | No | No | Partial (withTFAT12 only) | No | Partial (withVFAT LFNs only) | No | No |
| FAT16 /FAT16B /FAT16X | No | No | No | Partial (withTFAT16 only) | No | Partial (withVFAT LFNs only) | No | No |
| FAT32 /FAT32X | No | No | No? | Partial (withTFAT32 only) | No | Partial (withVFAT LFNs only) | No | No |
| GFS | Yes | Yes[aa] | Yes | Yes[ab] | Yes | Yes | No | No |
| HPFS | No | No | No | No | No | Yes | No | No |
| NTFS | Yes | Yes[ac] | No[ad] | Yes[ad] (2000) | Yes[ae] | Yes | Yes | ? |
| HFS Plus | Yes[19] | Yes | No | Yes[af] | Optional[ag] | Yes | Yes[ah] | No |
| FFS | Yes | Yes | No | No | Yes | Yes | No | No |
| UFS1 | Yes | Yes | No | No | Yes | Yes | No | No |
| UFS2 | Yes | Yes | No | Yes[ai][24][aj] | Yes | Yes | No | ? |
| HAMMER | Yes | Yes | Yes | Yes | Yes | Yes | ? | No |
| HAMMER2 | Yes | Yes | ? | ? | ? | ? | ? | ? |
| LFS | Yes | Yes | Yes[ak] | No | Yes | Yes | No | No |
| EROFS | Yes | Yes | No | No | Yes | Yes | No | No |
| ext | Yes | Yes | No | No | Yes | Yes | No | No |
| Xiafs | Yes | Yes | No | No | Yes | Yes | No | No |
| ext2 | Yes | Yes | No | No | Yes | Yes | No | Yes[al] |
| ext3 | Yes | Yes | Yes (2001)[am] | Yes (2001) | Yes | Yes | No | Yes |
| ext4 | Yes | Yes | Yes[am] | Yes | Yes, optional[27] | Yes | No | Yes |
| NOVA | Yes | Yes | No | Yes | Yes | Yes | No | Yes |
| F2FS | Yes | Yes | Yes[ak] | No | Yes | Yes | No | No |
| Lustre | Yes | Yes | Yes[am] | Yes | Yes | Yes | Yes | No |
| NILFS | Yes | Yes | Yes[ak] | No | Yes | Yes | No | No |
| ReiserFS | Yes | Yes | Yes[an] | Yes | Yes | Yes | No | ? |
| Reiser4 | Yes | Yes | Yes | No | Yes | Yes | No | ? |
| OCFS | No | Yes | No | No | Yes | Yes | No | No |
| OCFS2 | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
| XFS | Yes | Yes | Yes[am] | Yes | Yes[ao] | Yes | Yes | ? |
| JFS | Yes | Yes | Yes | Yes (1990) | Yes[ap] | Yes | No | ? |
| QFS | Yes | Yes | No | Yes | Yes | Yes | No | No |
| BFS | Yes | Yes | No | Yes | Yes | Yes | ? | No |
| NSS | Yes | Yes | ? | Yes | Yes[aq] | Yes[aq] | Yes[ar] | No |
| NWFS | Yes[as] | Yes[as] | No | No | Yes[aq] | Yes[aq] | Yes[ar] | No |
| Files-11 ODS-1[15] | Yes | No | No | No | No | No | No | No |
| Files-11 ODS-2[16] | Yes | Yes[at] | No | Yes | No | No | Yes | No |
| Files-11 ODS-5 | Yes | Yes[at] | No | Yes | No | Yes | Yes | ? |
| UDF | Yes | Yes | Yes[ak] | Yes[ak] | Yes | Yes | No | Yes |
| VxFS | Yes | Yes | Yes | No | Yes | Yes | Yes | ? |
| Fossil | No | No | No | No | Yes | Yes | Yes | No |
| ZFS | Yes | Yes | Yes[au] | No[au] | Yes | Yes | No | No |
| Btrfs | Yes | Yes | Yes[av] | No | Yes | Yes | ? | ? |
| bcachefs | Yes | Yes | Yes[aw] | No | Yes, optional[29] | Yes | ? | ? |
| Minix V1 | Yes | Yes | No | No | Yes | Yes | No | No |
| Minix V2 | Yes | Yes | No | No | Yes | Yes | No | No |
| Minix V3 | Yes | Yes | No | No | Yes | Yes | No | No |
| VMFS2 | Yes | Yes | No | Yes | Yes | Yes | No | No |
| VMFS3 | Yes | Yes | No | Yes | Yes | Yes | No | No |
| ReFS | Yes[ax] | Yes | ? | ? | Yes[ae] | Yes | ? | ? |
| ISO 9660 | No | No | No | No | No | No | No | No |
| ISO 9660:Rock Ridge extension | Yes | Yes | No | No | Yes | Yes | No | No |
| ISO 9660:Joliet extension | No | No | No | No | No | Yes | No | No |
| SquashFS | Yes | Yes | No | No | Yes | Yes | No | No |
| BlueStore/CephFS | Yes | Yes | Yes | Yes | Yes | Yes | No | No |
| File system | Hard links | Symbolic links | Block journaling | Metadata-only journaling | Case-sensitive | Case-preserving | File Change Log | XIP |
Note that in addition to the below table, block capabilities can be implemented below the file system layer in Linux (LVM, integritysetup,cryptsetup) or Windows (Volume Shadow Copy Service,SECURITY), etc.
| File system | Internal snapshotting / branching | Encryption | Deduplication | Datachecksum/ECC | Persistent Cache | Multiple Devices | Compression | Self-healing[ay] |
|---|---|---|---|---|---|---|---|---|
| DECtape | No | No | No | No | No | No | No | No |
| BeeGFS | No | No | Yes | No | No | No | Yes | No |
| Level-D | No | No | No | No | No | No | No | No |
| RT-11 | No | No | No | No | No | No | No | No |
| APFS | Yes | Yes | Yes[30] | No | No | No | Yes | No |
| Version 6 Unix file system (V6FS) | No | No | No | No | No | No | No | No |
| Version 7 Unix file system (V7FS) | No | No | No | No | No | No | No | No |
| exFAT | No | No | No | No | No | No | No | No |
| FAT12 | No | No | No | No | No | No | Partial[az] | No |
| FAT16 /FAT16B /FAT16X | No | No | No | No | No | No | Partial[az] | No |
| FAT32 /FAT32X | No | No | No | No | No | No | No | No |
| GFS | No | No | ? | No | No | No | No | No |
| HPFS | ? | No | ? | No | No | No | No | No |
| NTFS | No | Yes | Yes[ba][32] | No | No | No | Yes | No |
| HFS Plus | No | No[bb] | No | No | No | No | No | No |
| FFS | No | No | No | No | No | No | No | No |
| UFS1 | No | No | No | No | No | No | No | No |
| UFS2 | Yes | No | No | No | No | No | No | No |
| HAMMER | Yes | No | Yes | Yes | No | No | No | No |
| HAMMER2 | Yes | ? | Yes | Yes | ? | ? | Yes | Pending |
| LFS | Yes | No | No | No | No | No | No | No |
| EROFS | No | No | Yes | No | No | Yes | Yes | No |
| ext | No | No | No | No | No | No | No | No |
| Xiafs | No | No | No | No | No | No | No | No |
| ext2 | No | No | No | No | No | No | No | No |
| ext3 | No | No | No | No | No | No | No | No |
| ext4 | No | Yes, experimental[33] | No | No[34] | No | No | No | No |
| NOVA | Yes | No | No | Yes | No | No | No | ? |
| F2FS | No | Yes, experimental[35] | No | No | No | No | Yes | No |
| Lustre | No | No | No | No | Yes | Yes | No | No |
| NILFS | Yes, continuous[ak] | No | No | Yes | No | No | No | No |
| ReiserFS | No | No | No | No | No | No | No | No |
| Reiser4 | ? | Yes[bc] | ? | No | No | No | Yes | No |
| OCFS | No | No | No | No | No | No | No | No |
| OCFS2 | No | No | No | No | No | No | No | No |
| XFS | No | No | Yes[36] | No[34] | No | No | No | No |
| JFS | ? | No | ? | No | No | No | only in JFS1 on AIX[37] | No |
| QFS | No | No | No | No | No | No | No | No |
| BFS | No | No | No | No | No | No | No | No |
| NSS | Yes | Yes | ? | No | No | No | Yes | No |
| NWFS | ? | No | ? | No | No | No | Yes | No |
| Files-11 ODS-2 | Yes | No | No | No | No | No | No | No |
| Files-11 ODS-5 | Yes | No | No | No | No | No | No | ? |
| UDF | No | No | No | No | No | No | No | No |
| VxFS | Yes[bd] | No | Yes | No | No | No | No | No |
| Fossil | Yes | No | Yes | No | No | No | Yes | No |
| ZFS | Yes | Yes[be] | Yes | Yes | Yes | Yes | Yes[bf] | Yes |
| Btrfs | Yes | No | Yes | Yes[bg] | No | Yes | Yes[bh] | Yes |
| bcachefs | Yes | Yes | No | Yes[bi] | Yes[43] | Yes | Yes[bj] | Yes[bk] |
| Minix V1 | No | No | No | No | No | No | No | No |
| Minix V2 | No | No | No | No | No | No | No | No |
| Minix V3 | No | No | No | No | No | No | No | No |
| VMFS2 | No | No | No | No | No | No | No | No |
| VMFS3 | No | No | No | No | No | No | No | No |
| ReFS | Yes[bl] | No | Yes | No[bm] | No | No | No[bn] | No[bm] |
| ISO 9660 | No | No | No[bo] | No | No | No | No | No |
| ISO 9660:Rock Ridge extension | No | No | No[bo] | No | No | No | No | No |
| ISO 9660:Joliet extension | No | No | No[bo] | No | No | No | No | No |
| SquashFS | No | No | Yes | Yes | No | No | Yes | No |
| BlueStore/CephFS | Yes | No | No | Yes | Yes | Yes | Yes | Yes |
| File system | Internal snapshotting / branching | Encryption | Deduplication | Datachecksum/ECC | Persistent Cache | Multiple Devices | Compression | Self-healing[ay] |
"Online" and "offline" are synonymous with "mounted" and "not mounted".
| File system | Host OS | Offline grow | Online grow | Offline shrink | Online shrink | Add and remove physical volumes |
|---|---|---|---|---|---|---|
| exFAT | misc. | No | No | No | No | No |
| FAT16 /FAT16B /FAT16X | misc. | Yes[bp] | No | Yes[bp] | No | No |
| FAT32 /FAT32X | misc. | Yes[bp] | No | Yes[bp] | No | No |
| NTFS | Windows | Yes | Yes | Yes | Yes | No |
| ReFS | Windows | ? | Yes | ? | No | No |
| HFS | macOS | No | No | No | No | No |
| HFS Plus | macOS | No | Yes | No | Yes | No |
| APFS | macOS | ? | Yes | ? | Yes | ? |
| HAMMER | DragonflyBSD | ? | ? | ? | ? | ? |
| EROFS | Linux | Yes | No | No | No | Yes |
| ext2[48] | Linux | Yes | No | Yes | No | No |
| ext3[48] | Linux | Yes | Yes | Yes | No | No |
| ext4[48] | Linux | Yes | Yes | Yes | No | No |
| NOVA | Linux | No | No | No | No | No |
| F2FS[49] | Linux | Yes | No | No | No | No |
| Lustre[50] | Linux | ? | Yes | No | No | Yes |
| XFS[51] | Linux | No | Yes | No[52] | No[52] | No |
| JFS2 | AIX | Yes | Yes | Yes | Yes | No |
| JFS[53] | Linux | Yes | No | No | No | No |
| NTFS[54] | Linux | Yes | No | Yes | No | No |
| ReiserFS[55] | Linux | Yes | Yes | Yes | No | No |
| Reiser4[56] | Linux | Yes | Yes | Yes | No | No |
| Btrfs[57] | Linux | Yes | Yes | Yes | Yes | Yes |
| bcachefs[43] | Linux | Yes | Yes | No | No | Yes |
| NILFS[58] | Linux | No | Yes | No | Yes | No |
| ZFS | misc. | No | Yes | No | Yes | Partial[59] |
| UFS2[60] | FreeBSD | Yes | Yes (FreeBSD 10.0-RELEASE or later) | No | No | No |
| SquashFS | Linux | No | No | No | No | No |
| BlueStore/CephFS | Linux | No | Yes | No | Yes | Yes |
| File system | Sparse files | Block suballocation | Tail packing | Extents | Variable block size[bq] | Inline data (resident files) | Allocate-on-flush | Copy on write | Trim support |
|---|---|---|---|---|---|---|---|---|---|
| DECtape | No | No | No | No | No | ? | No | No | No |
| BeeGFS | Yes | No | No | Yes | Yes | ? | Yes | Yes | ? |
| Level-D | No | No | No | Yes | No | ? | No | No | ? |
| APFS | Yes | ? | ? | Yes | ? | ? | Yes | Yes | Yes[61][62] |
| Version 6 Unix file system (V6FS) | Yes | No | No | No | No | No | No | ? | No |
| Version 7 Unix file system (V7FS) | Yes | No | No | No | No | No | No | ? | No |
| exFAT | No | No | No | Partial (only if the file fits into one contiguous block range) | No | No | No | No | Yes (Linux) |
| FAT12 | Partial (only inside of compressed volumes)[63] | Partial (only inside ofStacker 3/4 andDriveSpace 3 compressed volumes[31]) | No | Partial (only inside of compressed volumes)[64] | No | No | No | No | Yes (Linux) |
| FAT16 /FAT16B /FAT16X | Partial (only inside of compressed volumes)[63] | Partial (only inside ofStacker 3/4 andDriveSpace 3 compressed volumes[31]) | No | Partial (only inside of compressed volumes)[64] | No | No | No | No | Yes (Linux) |
| FAT32 /FAT32X | No | No | No | No | No | No | No | No | Yes (Linux) |
| GFS | Yes | No | Partial[br] | No | No | ? | No | ? | Yes |
| HPFS | No | No | No | Yes | No | ? | No | ? | Yes (Linux) |
| NTFS | Yes | Partial | No | Yes | No | Yes (approximately 700 bytes) | No | ? | Yes (NT 6.1+; Linux) |
| HFS Plus | No | No | No | Yes | No | ? | No | ? | Yes (macOS) |
| FFS | Yes | 8:1[bs] | No | No | No | No | No | ? | No |
| UFS1 | Yes | 8:1[bs] | No | No | No | No | No | ? | No |
| UFS2 | Yes | 8:1[bs] | No | No | Read-only so far | No | No | ? | Yes[65][66] |
| HAMMER | ? | ? | ? | ? | ? | ? | ? | Yes | ? |
| HAMMER2 | ? | ? | ? | ? | ? | Yes | ? | Yes | ? |
| LFS | Yes | 8:1[bs] | No | No | No | ? | No | Yes | ? |
| EROFS | Yes | Yes | Yes | Yes | No | Yes | No | No | No |
| ext | Yes | No | No | No | No | ? | No | No | No |
| Xiafs | Yes | No | No | No | No | ? | No | ? | ? |
| ext2 | Yes | No[bt] | No | No | No | ? | No | No | Yes |
| ext3 | Yes | No[bt] | No | No | No | ? | No | No | Yes |
| ext4 | Yes | No[bt] | No | Yes | No | Yes (inode size - 96B)[67] | Yes | No | Yes |
| NOVA | Yes | No | No | Yes | No | ? | No | Yes | ? |
| F2FS | Yes | No | No | Partial[bu] | No | Yes (approximately 3.4KB)[68] | Yes | Yes | Yes[69] |
| Lustre | Yes | No | No | Yes | No | ? | Yes | ? | ? |
| NILFS | Yes | No | No | No | No | ? | Yes | Yes | Yes (Linux NILFS2) |
| ReiserFS | Yes | Yes[bv] | Yes | No | No | No | No | ? | ? |
| Reiser4 | Yes | Yes[bv] | Yes | Yes[bw] | No | No | Yes | ? | Testing[70] |
| OCFS | ? | No | No | Yes | No | ? | No | ? | ? |
| OCFS2 | Yes | No | No | Yes | No | Yes | No | ? | Yes (Linux) |
| XFS | Yes | No | No | Yes | No | No (not accepted)[71] | Yes | Yes, on request[72] | Yes (Linux) |
| JFS | Yes | Yes | No | Yes | No | Yes (256 bytes)[bx] | No | ? | Yes (Linux) |
| QFS | ? | Yes | No | No | No | ? | No | ? | ? |
| BFS | ? | No | No | Yes | No | ? | No | ? | Yes (Haiku) |
| NSS | ? | No | No | Yes | No | ? | Yes | ? | ? |
| NWFS | ? | Yes[by] | No | No | No | ? | No | ? | ? |
| Files-11 ODS-5 | ? | No | No | Yes | No | No | No | ? | ? |
| VxFS | Yes | ? | No | Yes | No | ? | No | ? | ? |
| UDF | Yes | No | No | Yes | No | Yes[73] | Depends on implementation. | Yes, forwrite once read many media | No |
| Fossil | ? | No | No | No | No | ? | No | ? | ? |
| ZFS | Yes | Yes | No | No | Yes | Yes (112 bytes)[74] | Yes | Yes | Yes |
| Btrfs | Yes | Yes | No[75] | Yes | Yes | Yes (2 KiB)[75] | Yes | Yes | Yes |
| bcachefs | Yes | Yes[bz] | Yes[ca] | Yes | No | Yes (half block size)[43] | Yes | Yes | Yes[43] |
| VMFS2 | Yes | Yes | No | No | No | ? | No | ? | ? |
| VMFS3 | Yes | Yes | No | No | No | ? | No | ? | ? |
| ReFS | Yes | ? | ? | ? | No | ? | ? | Yes | Yes (NT 6.1+) |
| ISO 9660 | No | No | No | ISO 9660 Level 3 only | No | ? | No | No | No |
| ISO 9660:Rock Ridge extension | No | No | No | extended from ISO 9660 | No | ? | No | No | No |
| ISO 9660:Joliet extension | No | No | No | extended from ISO 9660 | No | ? | No | No | No |
| SquashFS | Yes | No | Yes | No | No | ? | No | No | No |
| BlueStore/CephFS | Yes | ? | ? | ? | ? | ? | No | Yes | Yes |
| File system | Sparse files | Block suballocation | Tail packing | Extents | Variable block size[bq] | Inline data (resident files) | Allocate-on-flush | Copy on write | Trim support |
| File system | DOS | Linux | macOS | Windows 9x (historic) | Windows (current) | Classic Mac OS | FreeBSD | OS/2 | BeOS | Minix | Solaris | z/OS | Android |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| DECtape | No | No | No | No | No | No | No | No | No | No | No | No | No |
| BeeGFS | No | Yes | ? | No | No | No | No | No | ? | ? | ? | No | No |
| Level-D | No | ? | ? | No | No | No | No | No | No | No | ? | ? | No |
| RT-11 | No | No | No | No | No | No | No | No | No | No | No | No | No |
| APFS | No | Partial (read-only with apfs-fuse[77] or linux-apfs[78]) | Yes (Since macOS Sierra) | No | No | No | No | No | No | No | No | No | No |
| Version 6 Unix file system (V6FS) | No | ? | No | No | No | No | No | No | No | No | No | No | No |
| Version 7 Unix file system (V7FS) | No | Yes | No | No | No | No | No | No | ? | ? | ? | No | No |
| exFAT | No | Yes (since 5.4,[79] available as a kernel module orFUSE driver for earlier versions) | Yes | No | Yes | No | Yes (available as aFUSE driver) | No | No | No | Yes (available as aFUSE driver) | No | With kernel 5.10 |
| FAT12 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Partial (via dosdir, dosread, doswrite) | Yes | ? | Yes |
| FAT16 /FAT16B /FAT16X | Yes (FAT16 from DOS 3.0, FAT16B from DOS 3.31, FAT16X from DOS 7.0) | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Partial (via dosdir, dosread, doswrite, not FAT16X) | Yes | ? | Yes |
| FAT32 /FAT32X | Yes[b] | Yes | Yes | Yes[b] | Yes | ? | Yes | Yes | Yes | No | Yes | ? | Yes |
| GFS | No | Yes | ? | No | No | No | No | ? | ? | ? | ? | ? | No |
| HPFS | Partial (with third-party drivers) | Yes | ? | No | No | ? | Yes | Yes (fromOS/2 1.2) | ? | No | ? | ? | No |
| NTFS | Needs 3rd-party drivers | Yes Native since Linux Kernel 5.15NTFS3. Older kernels may use backportedNTFS3 driver orntfs-3g[80] | Read only, write support needsParagon NTFS orntfs-3g | Needs 3rd-party drivers likeParagon NTFS for Win98,DiskInternals NTFS Reader | Yes | No | Yes withntfs-3g | ? | Yes withntfs-3g | No | Yes withntfs-3g | ? | With third party tools |
| HFS | No | Yes | No write support since Mac OS X 10.6 and no support at all since macOS 10.15 | No | Needs Paragon HFS+[81] | Yes | No | ? | Yes | No | ? | No | No |
| HFS Plus | No | Partial - writing support only to unjournalled FS | Yes | No | Needs Paragon HFS+[81] | Yes fromMac OS 8.1 | No | ? | with addon | No | ? | No | No |
| FFS | No | ? | Yes | No | ? | ? | Yes | ? | ? | ? | ? | ? | No |
| UFS1 | No | Partial - read only | Yes | No | Partial (withufs2tools, read only) | ? | Yes | No | ? | ? | Yes | ? | No |
| UFS2 | No | Yes | Yes | No | Partial (withufs2tools, read only) | ? | Yes | No | ? | ? | ? | ? | No |
| LFS | No | ? | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| EROFS | No | Yes | Needs - since erofs-utils 1.4 | No | No | No | No | No | No | No | No | No | Yes |
| ext | No | Yes - until 2.1.20 | No | No | No | No | No | No | No | No | No | No | No |
| Xiafs | No | Yes - until 2.1.20 | No | No | No | No | No | No | No | No | No | No | No |
| ext2 | No | Yes | Needs Paragon ExtFS[84] orext2fsx | Partial (read-only, with explore2fs)[85] | Needs Paragon ExtFS[86] or partial with Ext2 IFS[87] or ext2fsd[88] | No | Yes | No | Yes | ? | ? | ? | No |
| ext3 | No | Yes | Needs Paragon ExtFS[84] or partial withext2fsx (journal not updated on writing) | Partial (read-only, with explore2fs)[85] | Needs Paragon ExtFS[86] or partial with Ext2 IFS[87] or ext2fsd[88] | Partial (read only)[citation needed] | Yes[89] | No | with addon | ? | Yes | ? | Yes |
| ext4 | No | Yes | Needs Paragon ExtFS[84] | No | Yes, with the optionalWSL2; physical and VHDX virtual disks.[90][91] | ? | Yes since FreeBSD 12.0[89] | No | with addon | ? | ? | ? | Yes |
| NOVA | No | Yes | No | No | No | No | No | No | No | No | No | No | No |
| F2FS | No | Yes | No | No | No | No | No | No | No | No | No | No | Yes |
| Lustre | No | Yes[92] | ? | No | No | ? | No | ? | ? | ? | Yes | ? | No |
| NILFS | No | Yes as an external kernel module | ? | No | ? | ? | No | ? | ? | ? | ? | ? | No |
| ReiserFS | No | Yes - until 6.13 | ? | No | No | ? | Partial - Read Only from 6.0 to 10.x[93] and dropped in 11.0[94][95] | ? | with addon | ? | ? | ? | No |
| Reiser4 | No | Yes with a kernel patch | ? | No | No | ? | No | ? | ? | ? | ? | ? | No |
| SpadFS | No | Yes | No | No | No | No | ? | No | No | No | No | No | No |
| OCFS | No | Yes | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| OCFS2 | No | Yes | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| XFS | No | Yes | ? | No | No | ? | Partial | ? | with addon (read only) | ? | ? | ? | No |
| JFS | No | Yes | ? | No | No | ? | No | Yes | ? | ? | ? | ? | No |
| QFS | No | Client[96] | ? | No | No | ? | No | No | ? | ? | Yes | ? | No |
| Be File System | No | Partial - read-only | ? | No | No | ? | No | No | Yes | ? | ? | ? | No |
| NSS | No | Yes via EVMS[cb] | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| NWFS | Partial (with Novell drivers) | ? | ? | No | No | ? | Yes | No | ? | ? | ? | ? | No |
| Files-11 ODS-2 | No | ? | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| Files-11 ODS-5 | No | ? | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| UDF | No | Yes | Yes | ? | Yes | ? | Yes | ? | ? | ? | Yes | ? | No |
| VxFS | No | Yes | ? | No | No | ? | No | No | ? | ? | Yes | ? | No |
| Fossil | No | Yes[cc] | Yes[cc] | No | No | No | Yes[cc] | No | No | No | Yes[cc] | ? | No |
| ZFS | No | Yes withFUSE[97] or as an external kernel module[98] | Yes with Read/Write Developer Preview[99] | No | With third-party software (OpenZFS).[100] | No | Yes | No | No | No | Yes | No | No |
| Btrfs | No | Yes | ? | No | Yes with WinBtrfs[101] | ? | No | ? | ? | ? | ? | ? | No |
| bcachefs | No | Yes | No | No | No | No | No | No | No | No | No | No | No |
| VMFS2 | No | ? | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| VMFS3 | No | ? | ? | No | No | ? | No | No | ? | ? | ? | ? | No |
| IBM HFS | No | No | No | No | No | No | No | No | No | No | No | Yes | No |
| IBM zFS | No | No | No | No | No | No | No | No | No | No | No | Yes | No |
| ReFS | No | Needs Paragon ReFS for Linux | ? | No | Yes | ? | ? | ? | ? | ? | ? | ? | No |
| ISO 9660 | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | No |
| ISO 9660:Rock Ridge extension | No | Yes | Yes | No | No | No | Yes | No | No | Yes | Yes | ? | No |
| ISO 9660:Joliet extension | No | Yes | Yes | Yes | Yes | ? | Yes | Yes | Yes | ? | Yes | ? | No |
| SquashFS | No | Yes | Partial (There are ports of unsquashfs and mksquashfs.) | No | Partial (There are ports of unsquashfs and mksquashfs.) | No | Partial (There are ports of unsquashfs and mksquashfs and fusefs-port.[102][103]) | No | No | No | No | No | No |
| BlueStore/CephFS | No | Yes | Client[cd] | No | Client[ce] | No | Client[cd] | No | No | No | No | No | No |
| File system | DOS | Linux | macOS | Windows 9x (historic) | Windows (current) | Classic Mac OS | FreeBSD | OS/2 | BeOS | Minix | Solaris | z/OS | Android |
While storage devices usually have their size expressed in powers of 10 (for instance a 1 TB Solid State Drive will contain at least 1,000,000,000,000 (1012, 10004) bytes), filesystem limits are invariably powers of 2, so usually expressed with IEC prefixes. For instance, a 1 TiB limit means 240, 10244 bytes. Approximations (rounding down) using power of 10 are also given below to clarify.
| File system | Maximumfilename length | Allowable characters in directory entries[cf] | Maximum pathname length | Maximum file size | Maximum volume size[cg] | Max number of files |
|---|---|---|---|---|---|---|
| AdvFS | 255 characters | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 TiB (17.59 TB) | 16 TiB (17.59 TB) | ? |
| APFS | 255UTF-8 characters[citation needed] | AnyUnicode 9.0 character[104] except/ andNUL[ch] | ? | 8 EiB (9.223 EB) | ? | 263[105] |
| bcachefs | 512 bytes[106] | Any byte except/ andNUL[ch] | No limit defined | 8 EiB (9.22 EB)[cj] | 2040 PiB (2.3 EB)[ck] | 264[cl] |
| BeeGFS | 255 bytes | Any byte exceptNUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB) | 16 EiB (18.44 EB) | ? |
| BFS | 255 bytes | Any byte exceptNUL[ch] | No limit defined[ci] | 12,288bytes to 260 GiB (279.1 GB)[cm] | 256 PiB (288.2 PB) to 2 EiB (2.305 EB) | Unlimited |
| BlueStore/CephFS | 255 characters | any byte, except null, "/" | No limit defined | Max. 264 bytes, 1 TiB (1.099 TB) by default[107] | Not limited | Not limited, default is 100,000 files per directory[108] |
| Btrfs | 255 bytes | Any byte except/ andNUL[ch] | No limit defined | 16 EiB (18.44 EB) | 16 EiB (18.44 EB) | 264 |
| CBM DOS | 16 bytes | Any byte exceptNUL | No directory hierarchy (flat file system) | 16 MiB (16.77 MB) | 16 MiB (16.77 MB) | ? |
| CP/M file system | 8.3 | ASCII except for < > . , ; : = ? * [ ] | No directory hierarchy (but accessibility of files depends on user areas via USER command sinceCP/M 2.2) | 32 MiB (33.55 MB) | 512 MiB (536.8 MB) | ? |
| DECtape | 6.3 | A–Z, 0–9 | DTxN:FILNAM.EXT = 15 | 369,280bytes (577 × 640) | 369,920bytes (578 × 640) | ? |
| Disk Operating System (GEC DOS) | ? | ? | ? | ? at least 131,072bytes | ? | ? |
| Elektronika BK tape format | 16 bytes | ? | No directory hierarchy (flat file system) | 64 KiB (65.53 KB) | Not limited. Approx. 800 KiB (819.2 KB) (one side) for 90 min cassette | ? |
| EROFS | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB) | 1 EiB (1.152 EB) | 264 |
| exFAT | 255UTF-16 characters | Unicode except for control codes 0x0000 - 0x001F or " * / : < > ? \ |[109] | 32,760 characters with each path component no more than 255 characters[110] | 16 EiB (18.44 EB)[110] | 64 ZiB (75.55 ZB) (276 bytes) | ? |
| ext | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 2 GiB (2.147 GB) | 2 GiB (2.147 GB) | ? |
| ext2 | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 GiB (17.17 GB) to 2 TiB (2.199 TB)[cg] | 2 TiB (2.199 TB) to 32 TiB (35.18 TB) | ? |
| ext3 | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 GiB (17.17 GB) to 2 TiB (2.199 TB)[cg] | 2 TiB (2.199 TB) to 32 TiB (35.18 TB) | ? |
| ext4 | 255 bytes[111] | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 GiB (17.17 GB) to 16 TiB (17.59 TB)[cg][112] | 1 EiB (1.152 EB) | 232 (staticinode limit specified atcreation) |
| F2FS | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 4,228,213,756KiB (4.329TB) | 16 TiB (17.59 TB) | ? |
| FAT (8-bit) | 6.3 (binary files) / 9 characters (ASCII files) | ASCII (0x00 and 0xFF not allowed in first character) | No directory hierarchy (flat file system) | ? | ? | ? |
| FAT12/FAT16 | 8.3 (255UCS-2 characters with LFN)[cn] | SFN:OEM A-Z, 0–9, ! # $ % & ' ( ) - @ ^ _ ` { } ~, 0x80-0xFF, 0x20. LFN:Unicode except NUL, " * / : < > ? \ |[cf][ch] | No limit defined[ci] | 32 MiB (33.55 MB) (4 GiB (4.294 GB))[co] | 1 MiB (1.048 MB) to 32 MiB (33.55 MB) | ? |
| FAT16B/FAT16X | 8.3 (255UCS-2 characters with LFN)[cn] | SFN:OEM A-Z, 0–9, ! # $ % & ' ( ) - @ ^ _ ` { } ~, 0x80-0xFF, 0x20. LFN:Unicode except NUL, " * / : < > ? \ |[cf][cn][ch] | No limit defined[ci] | 2 (4)GiB[co] (2.147 GB) | 16 MiB (16.77 MB) to 2 (4)GiB (2.147 GB) | ? |
| FAT32/FAT32X | 8.3 (255UCS-2 characters with LFN)[cn] | SFN:OEM A-Z, 0–9, ! # $ % & ' ( ) - @ ^ _ ` { } ~, 0x80-0xFF, 0x20. LFN:Unicode except NUL, " * / : < > ? \ |[cf][cn][ch] | 32,760 characters with each path component no more than 255 characters[110] | 4 GiB (4.294 GB)[110] | 512 MiB (536.8 MB) to 16 TiB (17.59 TB)[cp] | ? |
| FATX | 42 bytes[cn] | ASCII. | No limit defined[ci] | 2 GiB (2.147 GB) | 16 MiB (16.77 MB) to 2 GiB (2.147 GB) | ? |
| FFS | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 4 GiB (4.294 GB) | 256 TiB (281.4 TB) | ? |
| Files-11 ODS-1[15] | 9.3 inRADIX-50 | A–Z,0–9,$ | No limit defined; only two-level paths supported by operating systems | 2 TiB (2.199 TB) | 2 TiB (2.199 TB) | 216-1 |
| Files-11 ODS-2[16] | 20 bytes | A–Z,0–9,$,-,_ | 4,096 bytes[cq] | 2 TiB (2.199 TB) | 2 TiB (2.199 TB) | 224-1 |
| Files-11 ODS-5 | 236 bytes[cr] | ISO 8859-1 orUCS-2 | 4,096 bytes[cq] | 2 TiB (2.199 TB) | 2 TiB (2.199 TB) | ? |
| Fossil | ? | ? | ? | ? | ? | ? |
| GEC DOS filing system extended | 8 bytes | A–Z, 0–9. Period was directory separator | ? No limit defined (workaround for OS limit) | ? at least 131,072bytes | ? | ? |
| GEMDOS | 8.3 | A-Z, a-z, 0-9 ! @ # $ % ^ & ( ) + - = ~ ` ; ' " , < > | [ ] ( ) _[114] | ? | ? | ? | ? |
| GFS2 | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 100 TiB (109.95 TB) to 8 EiB (9.223 EB)[cs] | 100 TiB (109.95 TB) to 8 EiB (9.223 EB)[cs] | ? |
| GFS | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 2 TiB (2.199 TB) to 8 EiB (9.223 EB)[ct] | 2 TiB (2.199 TB) to 8 EiB (9.223 EB)[ct] | ? |
| GPFS | 255 UTF-8codepoints | Any byte except NUL[ch] | No limit defined[ci] | 9 EiB (10.37 EB) | 524,288 YiB (299 bytes) | ? |
| HAMMER | 1023 bytes[116] | Any byte except/ andNUL[ch] | ? | ? | 1 EiB (1.152 EB)[117] | ? |
| HFS | 31 bytes | Any byte except:; inmacOS,: in file names is converted to/ in the file system, and/ andNUL are disallowed[ch] | Unlimited | 2 GiB (2.147 GB) | 2 TiB (2.199 TB) | ? |
| HFS Plus | 255UTF-16 code units[cu] | Any validUnicode character except:;[cv] inmacOS,: in file names is converted to/ in the file system, and/ andNUL are disallowed[ch] | Unlimited | slightly less than 8 EiB (9.223 EB) | slightly less than 8 EiB (9.223 EB)[118][119] | ? |
| High Sierra Format | ? | ? | ? | ? | ? | ? |
| HPFS | 255 bytes | Any byte except NUL[cw] | No limit defined[ci] | 2 GiB (2.147 GB) | 2 TiB (2.199 TB)[cx] | ? |
| IBM SFS | 8.8 | ? | Non-hierarchical[120] | ? | ? | ? |
| ISO 9660:1988 | Level 1: 8.3, Level 2 & 3: ~ 180 | Depends on Level[cy] | ~ 180 bytes? | 4 GiB (4.294 GB) (Level 1 & 2) to 8 TiB (8.796 TB) (Level 3)[cz] | 8 TiB (8.796 TB)[da] | ? |
| ISO 9660:1999 | ? | ? | ? | ? | ? | ? |
| JFS | 255 bytes | AnyUnicode except NUL | No limit defined[ci] | 4 PiB (4.503 PB) | 32 PiB (36.02 PB) | ? |
| JFS1 | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 8 EiB (9.223 EB) | 512 TiB (562.9 TB) to 4 PiB (4.503 PB) | ? |
| ISO 9660:Joliet extension | 64 characters | AllUCS-2 code except *, /, \, :, ;, and ?[121] | ? | same asISO 9660:1988 | same asISO 9660:1988 | ? |
| Level-D | 6.3 | A–Z, 0–9 | DEVICE:FILNAM.EXT[PROJCT,PROGRM] = 7 + 10 + 15 = 32; + 5*7 for SFDs = 67 | 34,359,738,368 words (235); 206,158,430,208SIXBIT bytes | Approx 12 GiB (12.88 GB) (64 × 178 MiB (186.6 MB)) | ? |
| Lustre | 255 bytes | Any byte except NUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB) onZFS | 16 EiB (18.44 EB) | ? |
| MFS | 255 bytes | Any byte except: | No directory hierarchy (flat file system) | 256 MiB (268.4 MB) | 256 MiB (268.4 MB) | ? |
| MicroDOS file system | 14 bytes | ? | ? | 16 MiB (16.77 MB) | 32 MiB (33.55 MB) | ? |
| Minix V1 FS | 14 or 30 bytes, set at filesystem creation time | Any byte except NUL[ch] | No limit defined[ci] | 256.5MiB (268.9MB)[db] | 64 MiB (67.10 MB) | ? |
| Minix V2 FS | 14 or 30 bytes, set at filesystem creation time | Any byte except NUL[ch] | No limit defined[ci] | 2 GiB (2.147 GB)[db] | 1 GiB (1.073 GB) | ? |
| Minix V3 FS | 60 bytes | Any byte except NUL[ch] | No limit defined[ci] | 2 GiB (2.147 GB) | 4 GiB (4.294 GB) | ? |
| NILFS | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 8 EiB (9.223 EB) | 8 EiB (9.223 EB) | ? |
| NOVA | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB) | 16 EiB (18.44 EB) | ? |
| NSS | 256 characters | Depends on namespace used[dc] | Only limited by client | 8 TiB (8.796 TB) | 8 TiB (8.796 TB) | ? |
| NTFS | 255 characters | InWin32 namespace: anyUTF-16 code unit (case-insensitive) except/\:*"?<>| as well asNUL InPOSIX namespace: anyUTF-16 code unit (case-sensitive) except/ as well asNUL[122] | 32,767 characters with each path component (directory or filename) up to 255 characters long.[ci] However, the limit is approximate due to UNC, and some limitations may be removed on demand.[123] | 16 TiB (17.59 TB) to 8 PiB (9.007 PB)[dd][124] | 16 TiB (17.59 TB) to 8 PiB (9.007 PB)[dd][124] | 232 |
| NWFS | 80 bytes[de] | Depends on namespace used[dc] | No limit defined[ci] | 4 GiB (4.294 GB) | 1 TiB (1.099 TB) | ? |
| OCFS | 255 bytes | Any byte except NUL[ch] | No limit defined[ci] | 8 TiB (8.796 TB) | 8 TiB (8.796 TB) | ? |
| OCFS2 | 255 bytes | Any byte except NUL[ch] | No limit defined[ci] | 4 PiB (4.503 PB) | 4 PiB (4.503 PB) | ? |
| QFS | 255 bytes | Any byte except NUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB)[df] | 4 PiB (4.503 PB)[df] | ? |
| ReFS | 255 UTF-16 characters[125] | InWin32 namespace: anyUTF-16 code unit (case-insensitive) except/\:*"?<>| as well asNUL InPOSIX namespace: anyUTF-16 code unit (case-sensitive) except/ as well asNUL[125][126] | 32,767 characters with each path component (directory or filename) up to 255 characters long[125] | 16 EiB (18.44 EB)[125][127] | 1 YiB (1.208 YB)[125] | ? |
| ReiserFS | 4032 bytes/255 characters | Any byte except/ andNUL[ch] | No limit defined[ci] | 8 TiB (8.796 TB)[dg] (v3.6), 4 GiB (4.294 GB) (v3.5) | 16 TiB (17.59 TB) | ? |
| Reiser4 | 3976 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 8 TiB (8.796 TB) on x86 | ? | ? |
| ISO 9660:Rock Ridge extension | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | same asISO 9660:1988 | same asISO 9660:1988 | ? |
| RT-11 | 6.3 inRADIX-50 | A–Z,0–9,$ | No directory hierarchy (flat file system) | 33,554,432bytes (65536 × 512) | 33,554,432bytes | ? |
| SquashFS | 256 bytes | ? | No limit defined | 16 EiB (18.44 EB) | 16 EiB (18.44 EB) | ? |
| UDF | 255 bytes | AnyUnicode except NUL | 1,023 bytes[dh] | 16 EiB (18.44 EB) | 512 MiB (536.8 MB) to 16 TiB (17.59 TB) | ? |
| UFS1 | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 GiB (17.17 GB) to 256 TiB (281.4 TB) | 16 EiB (18.44 EB) | Subdirectory per directory is 32,767[129] |
| UFS2 | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 512 GiB (549.7 GB) to 32 PiB (36.02 PB) | 512 ZiB (604.4 ZB)[130] (279bytes) | Subdirectory per directory is 32,767[129] |
| UniFS | No limit defined (depends on client) | ? | No limit defined (depends on client) | Available cache space at time of write (depends on platform) | No limit defined | No limit defined |
| VaultFS | configurable (1024 default) | Any byte exceptNUL | No limit defined | No limit defined | No limit defined | No limit defined |
| Version 6 Unix file system (V6FS) | 14 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 MiB (16.77 MB)[di] | 32 MiB (33.55 MB) | ? |
| Version 7 Unix file system (V7FS) | 14 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 1 GiB (1.073 GB)[dj] | 2 TiB (2.199 TB) | ? |
| VMFS2 | 128 | Any byte except NUL or/[ch] | 2,048 | 4 TiB (4.398 TB)[dk] | 64 TiB (70.36 TB) | ? |
| VMFS3 | 128 | Any byte except NUL or/[ch] | 2,048 | 2 TiB (2.199 TB)[dk] | 64 TiB (70.36 TB) | ? |
| VxFS | 255 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB) | ? | ? |
| XFS | 255 bytes[dl] | Any byte except/ andNUL[ch] | No limit defined[ci] | 8 EiB (9.223 EB)[dm] | 8 EiB (9.223 EB)[dm] | 264 |
| Xiafs | 248 bytes | Any byte except NUL[ch] | No limit defined[ci] | 64 MiB (67.10 MB) | 2 GiB (2.147 GB) | ? |
| ZFS | 1023 bytes | Any byte except/ andNUL[ch] | No limit defined[ci] | 16 EiB (18.44 EB) | 268,435,456 QiB (2128 bytes) | 2128 |
| File system | Maximum filename length | Allowable characters in directory entries[cf] | Maximum pathname length | Maximum file size | Maximum volume size[cg] | Max number of files |
| File system | Start date (time) | End date (time) | Granularity (last modified time) |
|---|---|---|---|
| APFS | 1970-01-01 00:00:00 | 2554-07-21 23:34:33 | 0.000000001 seconds (1 nanosecond) |
| Btrfs | 1970-01-01 - ~292 billion years | 1970-01-01 + ~292 billion years | 0.000000001 seconds (1 nanosecond) |
| exFAT[dn] | 1980-01-01 00:00:00 | 2107-12-31 23:59:59 | 0.01 seconds (10 milliseconds) |
| ext2, ext3 | 1901-12-14 20:45:52 | 2038-01-19 03:14:07 | 1 second |
| ext4 | 1901-12-14 20:45:52 | 2446-05-10 22:38:55 | 0.000000001 seconds (1 nanosecond) |
| FAT12, FAT16, FAT32[do] | 1980-01-01 00:00:00 | 2107-12-31 23:59:58 | 2 seconds |
| ISO 9660[133] | 0001-01-01 | 9999-12-31[dp] | 0.01 seconds (10 milliseconds) |
| JFS | Unknown | Unknown | 0.000000001 seconds (1 nanosecond) |
| MFS, HFS, HFS Plus | 1904-01-01 00:00:00 | 2040-02-06 06:28:15 | 1 second |
| NTFS | 1601-01-01 | 60056-05-28 | 0.0000001 seconds (100 nanoseconds) |
| ReiserFS | 1901-12-14 20:45:52 | 2038-01-19 | 1 second |
| tux3 | Unknown | Unknown | 0.00390625 seconds (1/256th of a second) |
| UDF | 0001-01-01 | 9999-12-31 | 0.000001 seconds (1 microsecond) |
| UFS1 | 1901-12-14 20:45:52 | 2038-01-19 03:14:07 | Originally one second; 0.000000001 seconds (1 nanosecond) in 4.4BSD and 4.4BSD-derived systems. |
| UFS2 | 1970-01-01 - ~292 billion years | 1970-01-01 + ~292 billion years | 0.000000001 seconds (1 nanosecond) |
| XFS | 1901-12-13 | 2486-07-02 | 0.000000001 seconds (1 nanosecond) |
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.
newfs_hfs(8) – Darwin andmacOS System Manager'sManualThe cloned file dst shares its data blocks with the src file [..]
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.
By default, mkfs.xfs [..] will enable the reflink [=deduplication] feature.
resize2fs(8) – Linux Programmer'sManual – Administration and Privileged Commands from Manned.orgntfsresize(8)".nilfs-resize(8)".This file, when small, can be embedded in the [Information Control Block] that describes it.
we can allow filenames up to 1023 bytes long
If there was not a fsck(8) memory limit the maximum filesystem size would be 2 ^ 64 (blocks) * 32 KiB (32.76 KB) => 16 Exa * 32 KiB (32.76 KB) => 512 ZettaBytes.