Filesystem Atlas

Allocation Units, File Size Limits, and Bootability

Filesystem Default Allocation Unit Supported Range Max/Min File Size HDD Boot SSD Boot SD Boot MicroSD Boot
Btrfs Default: 4 KB 4 KB - 64 KB metadata; data extents variable Min: 0 bytes
Practical max: 16 EB (Linux limit)
Theoretical max: 16 EB
Yes Yes Yes (with bootloader) Yes (with bootloader)
CP/M Default: 1-2 KB 1 KB - 16 KB Min: 0 bytes
Practical max: ~8 MB (varies by CP/M version)
Theoretical max: ~8 MB
No No No No
exFAT Default: 128 KB (Windows) 4 KB - 32 MB Min: 0 bytes
Practical max: 128 PB
Theoretical max: 16 EB
Yes (UEFI) Yes (UEFI) Yes Yes
ext2 Default: 4 KB 1 KB - 4 KB Min: 0 bytes
Practical max: 2 TB
Theoretical max: 32 TB
Yes Yes Yes Yes
ext3 Default: 4 KB 1 KB - 4 KB Min: 0 bytes
Practical max: 2 TB
Theoretical max: 32 TB
Yes Yes Yes Yes
ext4 Default: 4 KB 1 KB - 64 KB Min: 0 bytes
Practical max: 16 TB (4 KB blocks)
Theoretical max: 1 EB (64 KB blocks)
Yes Yes Yes Yes
F2FS Default: 4 KB 4 KB - 16 KB Min: 0 bytes
Practical max: 3.9 TB
Theoretical max: 3.9 TB
Yes (with bootloader) Yes (with bootloader) Yes Yes
FAT16 Default: 4-8 KB 2 KB - 64 KB Min: 0 bytes
Practical max: 2 GB
Theoretical max: 4 GB
Yes Yes Yes Yes
FAT32 Default: 4 KB 512 B - 32 KB Min: 0 bytes
Practical max: 4 GB - 1 byte
Theoretical max: 4 GB - 1 byte
Yes Yes Yes Yes
HFS Default: 4 KB 512 B - 4 KB Min: 0 bytes
Practical max: 2 GB
Theoretical max: 2 GB
No No No No
HFS+ Default: 4 KB 512 B - 32 KB Min: 0 bytes
Practical max: 8 EB
Theoretical max: 8 EB
No No No No
JFS Default: 4 KB 512 B - 4 KB Min: 0 bytes
Practical max: 4 PB
Theoretical max: 4 PB
Yes (with bootloader) Yes (with bootloader) Yes (with bootloader) Yes (with bootloader)
Linux-swap N/A N/A Min: N/A
Practical max: N/A
Theoretical max: N/A
No No No No
LUKS N/A N/A Min: N/A
Practical max: N/A
Theoretical max: N/A
No No No No
LVM2 PV N/A N/A Min: N/A
Practical max: N/A
Theoretical max: N/A
No No No No
MINIX Default: 1 KB 1 KB - 4 KB Min: 0 bytes
Practical max: 64 MB (v1), 1 GB (v2), 16 GB (v3)
Theoretical max: same as practical
Yes (legacy BIOS) Yes (legacy BIOS) No No
NILFS2 Default: 4 KB 4 KB - 64 KB Min: 0 bytes
Practical max: 8 EB
Theoretical max: 8 EB
Yes (with bootloader) Yes (with bootloader) Yes (with bootloader) Yes (with bootloader)
NTFS Default: 4 KB 512 B - 64 KB Min: 0 bytes
Practical max: 16 TB (Windows)
Theoretical max: 16 EB
Yes (UEFI) Yes (UEFI) Yes (UEFI) Yes (UEFI)
Reiser4 Default: 4 KB 4 KB - 64 KB Min: 0 bytes
Practical max: 16 TB
Theoretical max: 16 TB
Yes (with bootloader) Yes (with bootloader) Yes (with bootloader) Yes (with bootloader)
ReiserFS Default: 4 KB 4 KB - 32 KB Min: 0 bytes
Practical max: 8 TB
Theoretical max: 16 TB
Yes (with bootloader) Yes (with bootloader) Yes (with bootloader) Yes (with bootloader)
SFS (Amiga) Default: 4 KB 512 B - 32 KB Min: 0 bytes
Practical max: 4 GB
Theoretical max: 4 GB
No No No No
UDF Default: 2 KB 512 B - 2 MB Min: 0 bytes
Practical max: 1 TB (rev 1.02), 16 TB (rev 2.01+), 128 TB (rev 2.60)
Theoretical max: 128 TB
Yes (with bootloader) Yes (with bootloader) Yes Yes
XFS Default: 4 KB 512 B - 64 KB Min: 0 bytes
Practical max: 8 EB
Theoretical max: 8 EB
Yes (with bootloader) Yes (with bootloader) Yes (with bootloader) Yes (with bootloader)