Пользователи Linux редко задумываются о том, какая файловая система используется. Во время установки системы большинство выбирает вариант по умолчанию, даже не рассматривая другие возможности. В Windows всё проще — там доминирует NTFS. В Linux же доступно множество файловых систем: Ext4, XFS, ZFS, BTRFS и другие.
Наиболее распространены Ext4 и XFS: XFS используется по умолчанию в дистрибутивах на базе RHEL, а Ext4 — в Debian и Ubuntu. При выборе файловой системы важно учитывать масштабируемость, стабильность и целостность данных.
В этом материале мы сосредоточимся на Ext4 и XFS, чтобы понять, чем они отличаются.
Файловая система Ext4
Ext4 (Extended filesystem) — четвёртое поколение семейства Ext, корни которого уходят в ОС Minix (1987). Первая версия Ext появилась в ядре Linux в 1992 году, а Ext4 была представлена в 2008 году с выпуском ядра 2.6.28, сменив Ext3.
Ext4 отлично справляется с хранением множества мелких файлов и надёжно записывает метаданные, даже если при записи кэш обрывается из-за отключения питания.
Ключевые особенности Ext4:
- Поддержка больших файлов: до 16 ТиБ на один файл (для сравнения, XFS поддерживает до 8 ЭиБ).
- Отложенное выделение блоков (extent-based allocation) для ускоренной записи.
- Обратная совместимость: можно монтировать Ext2 и Ext3 как Ext4, а некоторые функции Ext4 могут быть реализованы в старых системах.
- Эффективное распределение блоков перед записью на диск, что повышает скорость чтения/записи.
- Контрольные суммы журнала для снижения риска повреждения файлов.
- Быстрая проверка файловой системы (fsck работает заметно быстрее, чем в Ext3/Ext2).
- Таймстемпы с точностью до наносекунд и продление временной шкалы на 408 лет после 2038 года.
- Неограниченное число подкаталогов (в Ext3 максимум 32 000).
- Прозрачное шифрование (с Linux 4.1, июнь 2015).
Файловая система XFS
Разработана Silicon Graphics в 1993 году как высокопроизводительная 64-битная журналируемая ФС. Поддерживает файловые системы объёмом до 18 ЭиБ и огромные файлы. Оптимальна для систем с большими массивами дисков, мощными CPU и необходимостью хранить крупные объёмы данных.
XFS особенно хороша при работе с большими файлами и высокой масштабируемостью ввода-вывода. Это стандартная ФС в RHEL, CentOS, Oracle Linux, Rocky Linux, AlmaLinux.
Ключевые особенности XFS:
- Поддержка больших ФС: до 1 ПиБ (в зависимости от версии дистрибутива), тогда как Ext4 — до 50 ТиБ.
- Отложенное выделение блоков (lazy allocation) для снижения фрагментации и увеличения скорости.
- Онлайн-дефрагментация и расширение ФС без размонтирования.
- Продвинутые алгоритмы чтения метаданных.
- Журналирование метаданных для сохранения целостности при сбоях.
- Журналирование квот для быстрого восстановления после падения системы.
- Поддержка расширенных атрибутов (имя/значение для каждого файла).
- Масштабируемость хранения с помощью B-деревьев.
- Нет необходимости в регулярном fsck — консистентность поддерживается журналированием (при необходимости есть
xfs_repair).
Итог
Выбор файловой системы зависит от задач и условий:
- размеры файлов и объём ФС,
- нагрузка на ввод/вывод,
- допустимое время простоя,
- требования по скорости и задержкам.
Ext4 лучше подходит для универсального использования и больших массивов мелких файлов, XFS — для крупных файлов и высоконагруженных систем с большими объёмами данных.



















