ext2
ext2, or second extended file system, is a file system for the Linux kernel. It was initially designed by French software developer Rémy Card as a replacement for the extended file system (ext). Having been designed according to the same principles as the Berkeley Fast File System from BSD, it was the first commercial-grade filesystem for Linux.
Developer(s) | Rémy Card |
---|---|
Full name | Second extended file system |
Introduced | January 1993 with Linux |
Preceded by | extended file system |
Succeeded by | ext3 |
Partition IDs | EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 (GPT)0x83 (Master Boot Record)Apple_UNIX_SVR2 (Apple Partition Map) |
Structures | |
Directory contents | Table |
File allocation | bitmap (free space), table (metadata) |
Bad blocks | Table |
Limits | |
Max volume size | 2–32 TiB |
Max file size | 16 GiB – 2 TiB |
Max no. of files | 1018 |
Max filename length | 255 bytes |
Allowed filename characters | All bytes except NUL ('\0') and '/' |
Features | |
Dates recorded | modification (mtime), attribute modification (ctime), access (atime) |
Date range | December 14, 1901 - January 18, 2038 |
Date resolution | 1 s |
File system permissions | Unix permissions, POSIX Access Control Lists (ACL) |
Transparent compression | No (Available through patches) |
Transparent encryption | No |
Other | |
Supported operating systems | Linux, BSD, ReactOS, Windows (through an IFS), macOS (through an IFS), HelenOS, RIOT, Zephyr |
The canonical implementation of ext2 is the "ext2fs" filesystem driver in the Linux kernel. Other implementations (of varying quality and completeness) exist in GNU Hurd, MINIX 3, some BSD kernels, in MiNT, Haiku and as third-party Microsoft Windows and macOS (via FUSE) drivers.
ext2 was the default filesystem in several Linux distributions, including Debian and Red Hat Linux, until supplanted by ext3, which is almost completely compatible with ext2 and is a journaling file system. ext2 is still the filesystem of choice for flash-based storage media (such as SD cards and USB flash drives) because its lack of a journal increases performance and minimizes the number of writes, and flash devices can endure a limited number of write cycles. Since 2009, the Linux kernel supports a journal-less mode of ext4 which provides benefits not found with ext2, such as larger file and volume sizes.