EXT2
The EXT2 file system is a replacement of the Extended File System. The file system was created by Rémy Card in 1993. Files and directories are stored within Inodes. The date ranges for timestamps can only go as high as January 18, 2038. Once this date is reached, the EXT2 file system will no longer store proper timestamps
The file and space limitations are as follows:
Block Size
1KB
2KB
4KB
8KB
File size
16 GB
256 Gigabytes
2 Terabytes
2 Terabytes
File system
4 Terabytes
8 Terabytes
16 Terabytes
32 Terabytes
The directory and file structure is not indexed, so searching within a directory with a large amount of files can be time consuming.
EXT3
Stephen Tweedie in 1998 created the EXT3. You can do a in-place upgrade from EXT2. EXT3 supports Journaling and all three of its types. Journal, Ordered and Writeback
The size limitations on EXT3 are as follows:
Block Size
1KB
2KB
4KB
8KB
File size
16 GB
256 Gigabytes
2 Terabytes
2 Terabytes
File system
2 Terabytes
8 Terabytes
16 Terabytes
32 Terabytes
EXT4
The Fourth Extended File System was originally started as extensions to EXT3 to improve performance and stability. After a while, the extensions were included as a new file system - EXT4. The stable code for EXT4 was released in Linux kernel version 2.6.28 on December 25, 2008. EXT4 uses a 48-bit addressing system. This addressing system allows for a maximum file size of 16 Terabytes. The maximum volume size is 1 Exabyte. EXT4 uses Multi-Block Allocation to write multiple blocks at once instead of one block at a time to provide better performance. Directory listings are kept in an H-Tree for faster searching. EXT4 supports Online Defragmentation by using the e4defrag tool.