От свойств файловая системы, особенностей архитектуры, возможностей, надежности во многом зависит работоспособность операционной системы. Помимо продуманной "родной" файловой системы желательно, чтобы была возможность также работать с другими наиболее распространенными файловыми системами (например, FAT16/FAT32).
Как уже говорилось ранее, ядро взаимодействует с файловыми системами через VFS.
VFS и драйверы файловых систем являются одной из важнейших составляющих ядра. Для того, чтобы получить доступ к файлам, хранящимся на каком-либо устройстве хранения данных, необходимо, чтобы был активен драйвер соответствующей файловой системы, и файловая система была смонтирована. Драйвера всех файловых систем поддерживают набор стандартных функций: открыть файл по имени, записать данные в файл, прочитать данные из файла, закрыть файл, удалить файл и т.д. Буферизация (кэширование) выполняется на уровне VFS.
В настоящее время в Linux наиболее часто используется 2-я и 3-я версия файловой системы ExtFS "Extended File System". Ext3 отличается поддержкой журналирования. Существуют также и другие журналируемые файловые системы: ReiserFS и JFS от фирмы IBM.
Как правило, у этих файловых систем существует специальная область, называемая журналом. Журналирование должно обеспечивать целостность файловой системы после внезапного сбоя, такого как отключение питания. Для этого такие файловые системы, как reiserfs и ext3 в Linux, все изменения метаданных (служебной информации), а в некоторых режимах и данных (содержимого файлов) записывают сначала в журнал (выделенную область файловой системы), и только после попадания в журнал всех изменений (вызванных одной операцией) начинают изменять метаданные в их обычном месте. После сбоя, при следующем монтировании, система читает журнал и завершает все неоконченные транзакции, записанные в журнале, а те, что не успели полностью записаться в журнал, игнорирует. Таким образом гарантируется, что каждая транзакция будет либо полностью завершена, либо не будет иметь никакого эффекта.
В большинстве случаев, журналируемые файловые системы способны решить проблемы с надежностью при неожиданных сбоях без тех потерь производительности, к которым может привести использование опций sync при монтировании.
Посмотреть список обслуживаемых ядром файловых систем можно в файле
/proc/filesystems
Linux поддерживает большое количество типов файловых систем. В операционную систему Linux для обеспечения обмена файлами с другими операционными системами включена поддержка некоторых файловых систем. Однако их функциональные возможности могут быть значительно ограничены по сравнению с возможностями, обычно предоставляемыми файловыми системами UNIX®.