• Root/
  • General/
  • Filesystems
  • Filesystem refers to method in which files are stored on medium as well as additional features related to it. Typically it's safest to use default file system of operating system you use.

    Topics:

    ext4 (fourth extended filesystem)

    Recommended for any use. Default file system for Ubuntu, Debian and many others. Stable and mature, without many surprises. Supports both extending and reducing size of a file system. Accessible on Windows (via WSL only).
    Max volume size 1 EiB
    Max file size 16-256 TiB
    Max number of files 4 B
    Max filename length 255 bytes
    Allowed filename characters All except / and NULL (\0)
    Other filename restrictions . and .. are special filenames
    By default 5% of free space is reserved for system. This can be changed online but is not recommended, both for availability and fragmentation prevention.
    1. Displaying reserve sudo tune2fs -l /dev/sda | grep 'Reserved block count'
    2. Change reserve to 2% sudo tune2fs -m 2 /dev/sda
    3. Change reserve to 5% (this restores default setting) sudo tune2fs -m 5 /dev/sda

    XFS

    Recommended for RHEL. Default file system for RHEL. Mature and performant. Supports extending size of a file system. According to RedHat uses about 2 times CPU/metadata operation compared to ext4; it also and performs worse on systems with low bandwidth/IOPS (but tends to be faster otherwise).
    Max volume size 8 EiB - 1b (2^63 - 1 bytes)
    Max file size 8 EiB
    Max number of files 2^64
    Max filename length 255 bytes
    Allowed filename characters All except / and NULL (\0)
    Other filename restrictions . and .. are special filenames

    Brtfs

    Default file system for Fedora and openSUSE. Feature-rich with growing stability. Supports both extending and reducing size of a file system. Natively supports snapshots. Offers built-in RAID-like functionalities albeit those proves to still be in growing stability and maturity period (catastrophic partial/total data losses sometimes happen).
    Max volume size 16 EiB
    Max file size 16 EiB
    Max number of files 2^64
    Max filename length 255 ASCII characters
    Allowed filename characters All except / and NULL (\0)
    Other filename restrictions . and .. are special filenames

    FAT32

    Recommended for small USB drives (pendrives) and memory cards. Fairly limiting but widely supported. Minimal resiliency (alternating file allocation tables).
    Max volume size 2-16 TB
    Max file size 2-4 GiB (technically up to 256 GB, realistically expect 2 GB for best compatibility)
    Max number of files 268173300 for 32 KB clusters
    Max filename length 8.3 filename/255 characters
    Max directory depth 32-60 levels

    exFAT (Extensible File Allocation Table)

    Recommended for external SSD drives where FAT compatibility of files larger than 4 GB is required. Performant but less resilient than FAT32 (uses only one file allocation table).
    Max volume size 128 PB
    Max file size 128 PB
    Max number of files 2796202 per directory
    Max filename length 255 characters
    Allowed filename characters All except <>:"/\|?* and ASCII control characters (\0 - \31)

    New Technology File System (NTFS)

    Default file system for Windows. Somewhat stable.
    Max volume size 2^64 clusters; 256 TB - 8 PB
    Max file size 16 TB - 8 PB
    Max number of files 2^32-1
    Max filename length 255
    Allowed filename characters All except <>:"/\|?* and ASCII control characters (\0 - \31)
    Reserved filenames CON, PRN, AUX, NUL, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9 (both alone or with any extension)
    Other filename restrictions Cannot end in space or dot

    Resilient File System (ReFS)

    Highly not recommended. Non-default file system for Windows. Unstable, vulnerable to loss of all data on disk device under around thousand IO requests per second (any type, fulfilled or not). Promises various improvements over NTFS which it fails to deliver in safely manner. Expects backing storage (Microsoft's RAID1-like) to provide healthy version of file on checksum validation failure, deletes those file entirely regardless of such operation result. Possibly more stable in native offering (Azure storage).
    Max volume size 35 PB
    Max file size 35 PB

    Last update: 2024-06-17