ext4

The fourth extended filesystem (ext4) is a journaling file system for Linux, serving as the default for most distributions.

ext4 is a journaling file system designed for Linux, providing significant improvements over ext3 in terms of scalability and reliability. It supports file system sizes up to 1 exabyte (EiB) and individual file sizes up to 16 terabytes (TiB), making it suitable for high-capacity storage environments.

The core architectural shift is the implementation of extents. Unlike traditional block mapping, an extent represents a range of contiguous physical blocks. This approach minimizes metadata overhead and enhances performance when processing large files by reducing the number of pointers the system must track.

Key Features

  • Journaling: records changes in a dedicated area to ensure metadata consistency after unexpected shutdowns.
  • Delayed Allocation: improves performance and reduces fragmentation by waiting until data is flushed to disk before assigning physical blocks.
  • Multiblock Allocation: allows the file system to allocate multiple blocks in a single operation, optimizing write throughput.

ext4 is the standard choice for general-purpose Linux installations. Administrators use the tune2fs utility to modify filesystem parameters without reformatting, and mount -t ext4 to integrate partitions into the system hierarchy.