Penguin
Annotated edit history of Ext3 version 16, including all changes. View license author blame.
Rev Author # Line
16 JohnBillings 1 [Ext3] is a journaled FileSystem based on [Ext2]. It also has some additional features such as extents (which reduce the amount of overhead with storing where a file is stored on the disk for large files), and hash based lookups on directories solving the problem [Ext2] has with large directories being very slow. [Ext4] is the next generation of this filesystem.
11 JohnMcPherson 2
3 Note that despite journalling, you should periodically fsck(8) [Ext3] FileSystem~s to ensure they are consistent. HardDisk errors can still introduce problems.
4
5 You can turn [Ext2] FileSystem~s into [Ext3] ones at any time by issuing
6
7 <pre>
8 tune2fs -j /dev/''partition''
9 </pre>
10
11 Note that unlike most disk tool commands, you add the journal to a currently mounted partition.
12
13 You can also add <tt>-J</tt> to pass journal options. The only one currently supported is <tt>size=xMB</tt>. See tune2fs(8) for min/max size.
14
15 Given [Kernel] support (eg <tt>CONFIG_EXT3_FS_POSIX_ACL</tt> in a 2.6.x [Kernel]), you can use [POSIX] [ACL]s by either adding <tt>acl</tt> to the mount options column in fstab(5) or setting a default mount option in the partition itself by issuing
16
17 <pre>
18 tune2fs -o acl /dev/''partition''
19 </pre>
20
21 Remember to change fstab(5) to mount the partition as [Ext3], and then unmount/remount it or reboot. (You do not have to do this immediately).
22
23 You can always mount an [Ext3] partition as type [Ext2] — you just will not have any journalling performed. However, __beware__: do not do this if the ext3 partition was not cleanly unmounted! If the journal was not empty before doing so, your FileSystem may become corrupted. This may happen either right away due to incomplete journal operations or once you mount it as [Ext3] again because the [Kernel] will then happily commit old operations to your now modified FileSystem. So make sure the [Ext3] FileSystem was properly flushed and unmounted before you attempt to mount it as [Ext2]. (AddToMe: is this sufficient to ensure integrity?)
24
25 You can also enabled hashed directories with a 2.6 [Kernel]. This speeds up lookups for directories that contain a large numbers of files/directories.
26
27 <pre>
12 ChristianWarden 28 tune2fs -O dir_index /dev/''partition''
11 JohnMcPherson 29 fsck.ext3 -D /dev/''partition''
30 </pre>
31
32 The fsck is required to move the existing directories to the new format. If you ever remount the filesystem as ext2, directories that are written to will be converted back to the old format, so you need rerun the fsck.
15 IanMcDonald 33
34 If you still get filesystem checks occuring on a crash and you get a message such as =mounting ext3 filesystem as ext2= appearing then you probably are using [Ext3] on the root filesystem and put it in as a [Module]. You need to build it into the [Kernel] or use initrd(4) - the reason this occurs is that it can't get the module before it mounts the filesystem but it can't mount the filesystem as ext3 without the module.
13 CraigBox 35
36 -----
37 CategoryFileSystem%%%
14 CraigBox 38 CategoryJournallingFileSystem%%%
39 CategoryInodeFileSystem