ext2 является наиболее ранней файловой системой для Linux, которая была представлена в январе 1993 года. Эта ФС обладает высокой скоростью и может содержать файлы до 2 Тбайт.
Более развитой версией стала файловая система ext3. Одной из важных отличительных ее особенностей считают то, что она является так называемой журналируемой файловой системой. Журналируемые файловые системы более устойчивы к сбоям. Упрощенно их суть можно объяснить так. Предположим, требуется записать на диск какой-то файл. В процессе записи нужно совершить два действия.
- Записать информацию непосредственно на диск.
- Сделать пометку в файловой системе, что файл существует.
Однако после или во время одного из действий может случиться сбой в аппаратном обеспечении либо операционной системе, что может иметь два последствия: информация записана на диск, а пометки в файловой системе о существовании файла нет либо наоборот, пометка есть, но данных на диске нет. В таком случае любая другая операционная система при перезагрузке всегда предлагает просканировать диск на наличие ошибок. Такая операция занимает много времени и требует тщательного анализа состояния файловой системы со стороны сканирующей программы. Этим действиям была найдена альтернатива в виде журнала. В процессе работы с информацией на жестком диске все этапы записи информации на диск отмечаются в этом журнале. В случае сбоя сканирующая программа считывает информацию из журнала и выделяет незавершенные операции, которые впоследствии доводятся до конца либо отменяются, то есть файловая система остается целой. Примерно такие же принципы используются в базах данных в целях сохранности информации.