What is the differences between ext2 ext3 and ext4 file system in Linux?
Ext3 is a tiny bit slower than ext2 is, but it holds tremendous
advantages. There is really only one difference between ext2 and
ext3, and that is that ext3 uses a journal to prevent filesystem
corruption in the case of an unclean shutdown (ie. before the
filesystem is synced to disk). That makes ext3 a bit slower than
ext2 since all metadata changes are written to the journal, and
then flushed to disk, but on the other hand you don't risk having
the entire filesystem destroyed at power failure or if an unwitted
person turns the computer off uncleanly. You don't have to check
the filesystem after an unclean shutdown either. Ext3 has three
levels of journalling. Metadata (ie. internal filesystem
structures) are always journalled, so that the filesystem itself is
never corrupted. How ordinary data is written to the file system is
controllable, though. The default option is the "ordered" mode,
which causes file contents to be written to the filesystem before
metadata is even committed to the journal. The highest reliable
mode is called the "journal" mode, which causes file data to be
committed to the journal before it is flushed to its final place,
like the metadata. The least reliable mode, but rumoured to be the
fastest, is called the "writeback" mode, which makes no promises at
all regarding the consistency of file data. Only metadata is output
reliably in writeback mode. So as for anything else, it's mainly a
matter of priority. If you don't want ultimate speed, go with ext3.
If you need the highest speed that is theoratically aquirable
though, then go with ext2. For that to be effective you'll probably
need a really advanced hard drive controller, though.