The ext4 [ fourth extended filesystem ] is a journaled file system developed as the successor to ext3. Ext4 file system was released released on December 25, 2008 as a part of Kernel 2.6.28. at present Fedora, which is expected to arrive in late May, will use Ext4 as its standard file system. Ext4 will also be available optionally in Ubuntu 9.04, Red Hat 5.3, Mandriva 2009.1 and others.The ext4 filesystem can support volumes with sizes up to 1 exabyte ( 1 exabyte = 1,048,576 terabytes ) and files with sizes up to 16 terabytes.In ext3 the number of subdirectories that a directory can contain is limited to 32,000. This limit has been raised to 64,000 in ext4 file system.
The ext4 filesystem is backward compatible with ext3 and ext2, making it possible to mount ext3 and ext2 filesystems as ext4.The ext4 file system is partially forward compatible with ext3, that is, it can be mounted as an ext3 partition (using “ext3” as the filesystem type when mounting).Ext4 uses a filesystem performance technique called allocate-on-flush, also known as delayed allocation.
Key differences between ext3 and ext4?
The main new features in ext4 are below, and are described more fully in New_ext4_features:
- extent-mapped files for more efficient storage of file metadata (EXTENTS)
- multi-block and delayed allocation for faster/better file allocations
- support for larger filesystems (up to 2^48 blocks, currently 2^60 bytes) (64_BIT)
- optimized storage of filesystem metadata like bitmaps and inode table (FLEX_BG)
- less overhead for e2fsck, on-disk checksum of group descriptors (GDT_CSUM)
- removed 32000 subdirectory limit (DIR_NLINKS)
- nanosecond inode timestamps (EXTRA_ISIZE)
Limitations of EXT4
- Max file size >>> 16 TB (for 4k block filesystem)
- Max number of files >>> 4 billion (specified at filesystem creation time)
- Max filename length >>> 256 bytes
- Max volume size >>> 1 EB
- Allowed characters in filenames >>> All bytes except NULL (‘\0’) and ‘/’