/ɛks tiː tuː/

noun — "second generation Linux filesystem."

EXT2, short for Second Extended File System, is a filesystem designed for Linux that introduced improvements over the original EXT filesystem, including larger volume support, optimized metadata management, and more efficient file storage structures. It does not include journaling, unlike its successors EXT3 and EXT4, but its simplicity offers high performance for certain use cases, particularly on systems where crash recovery is handled externally.

Technically, EXT2 organizes storage into block groups, each containing inodes, data blocks, and bitmaps to track allocation status. Inodes hold file metadata, such as ownership, permissions, timestamps, and pointers to data blocks. Each file occupies one or more contiguous or linked blocks, and directories are implemented as special files containing references to inodes. The filesystem supports block sizes of 1, 2, 4, or 8 kilobytes, allowing volume sizes up to 32 terabytes depending on the block size and inode configuration. Fragmentation can occur over time because EXT2 lacks journaling and advanced allocation strategies.

Operationally, when a file is written, the system allocates an inode, identifies free data blocks via the bitmap, and stores the file data. Reading a file requires accessing the inode and following block pointers to reconstruct the file content. Recovery from crashes relies on external tools like fsck, which scans the filesystem for inconsistencies and repairs allocation tables. Unlike journaling filesystems, EXT2 does not log pending operations, so uncommitted writes may be lost on a system crash.

Example workflow of creating and mounting an EXT2 filesystem:


mkfs.ext2 /dev/sdc1
mount /dev/sdc1 /mnt/storage
ls -l /mnt/storage

This sequence formats a partition as EXT2, mounts it, and lists its contents for verification.

In practice, EXT2 is still used in embedded Linux systems, USB drives, and boot partitions where journaling is unnecessary or could introduce additional wear on flash media. Its lightweight nature and stability make it suitable for read-heavy or static environments, while more dynamic or high-availability systems often prefer EXT3 or EXT4 for crash resilience and journaling.

Conceptually, EXT2 is like a traditional filing cabinet with well-labeled folders: each inode is a folder card pointing to the pages (data blocks) where the file contents are stored. There is no log of in-progress changes, so maintaining integrity requires careful management and external checks.

See EXT, EXT3, EXT4, FileSystem.