1.26M
Category: informaticsinformatics

Файловая система Ext4 для Linux

1.

Файловая система Ext4
для Linux
inode, extents, журналы — что
нужно знать эксперту
Ключевые структуры Ext4 и их значение при анализе
Linux-носителей
Ext4 • inode • extents • journal
1

2.

Ext4: что находится под обычными папками
Файл — это не только имя и содержимое, а связка служебных структур.
Superblock
Группы блоков
«Паспорт» файловой системы:
размер, функции, состояние.
Делят раздел на области и
ускоряют размещение файлов.
Inode table
Data blocks
Хранит метаданные объектов:
права, даты, ссылки.
Содержимое файлов и каталогов
на уровне блоков.
Journal JBD2
Фиксирует операции для восстановления согласованности после сбоя.
Ext4 • inode • extents • journal
2

3.

Inode: техническая карточка файла
Имя файла хранится в каталоге, а основные свойства — в inode.
inode #24831
тип
обычный файл / каталог /
ссылка
права
rwx и владелец
размер
объём объекта
ссылки
hard link count
время
mtime • ctime • atime • crtime
карта
данных
extents или блоки
Ext4 • inode • extents • journal
report.txt → inode #24831
каталог
связывает имя с
номером inode
backup.txt → inode #24831
один объект может иметь несколько имён через
hard link
3

4.

Временные метки: основа хронологии
Метаданные помогают понять, когда объект появился, менялся и использовался.
Важно
crtime
mtime
ctime
atime
создание файла
изменение
содержимого
изменение inode
обращение к файлу
Ext4 • inode • extents • journal
Метки полезны, но
не являются
абсолютным
доказательством.
Их сопоставляют с
логами системы,
shell history и
журналами
приложений.
4

5.

Extents: карта размещения данных
Ext4 описывает не каждый блок отдельно, а непрерывные диапазоны блоков.
Что такое extent
Запись вида: логический участок файла → физический диапазон
блоков на диске.
Зачем это нужно
Меньше служебных записей, быстрее доступ, лучше работа с
большими файлами.
Почему важно эксперту
Можно понять, где лежали данные, оценить фрагментацию и
искать фрагменты удалённых файлов.
Ext4 • inode • extents • journal
5

6.

Журнал JBD2: защита от несогласованности
Журнал нужен не для “истории пользователя”, а для восстановления после сбоя.
1. Операция
2. Journal
3. Commit
4. Filesystem
Изменение файла или
каталога.
Запись служебной
транзакции.
Фиксация согласованного
состояния.
Применение изменений
к основным структурам.
При аварийном выключении Ext4 может переиграть или отбросить незавершённые
транзакции.
Для эксперта журнал — дополнительный источник недавних служебных изменений, но не полноценный лог
действий.
Ext4 • inode • extents • journal
6

7.

Режимы журналирования Ext4
От режима зависит, какие следы могут сохраниться после сбоя.
data=ordered
Метаданные журналируются, данные записываются до
фиксации метаданных.
баланс надёжности и скорости
data=writeback
Метаданные журналируются, но порядок записи данных
менее строгий.
быстрее, но риск неожиданного
содержимого
data=journal
Через журнал могут проходить и метаданные, и данные
файла.
надёжнее, но медленнее
Ext4 • inode • extents • journal
7

8.

Что смотреть эксперту при анализе Ext4
Работа идёт по слоям: от видимых файлов к служебным структурам.
1
Дерево каталогов
имена, пути, права, размеры
2
Inode
метки времени, ссылки, флаги
3
Extents и блоки
физическое размещение данных
4
Journal
недавние служебные операции
5
Сопоставление
логи Linux, history, приложения
Ext4 • inode • extents • journal
8

9.

Ограничения: почему нельзя верить одному признаку
Файловая система даёт сильные улики, но требует проверки контекстом.
Метки времени меняются
Удаление не равно стиранию
Журнал циклический
Копирование, архивы, монтирование и
ручная правка могут исказить
хронологию.
Имена исчезают раньше, чем физически
перезаписываются блоки.
Старые транзакции вытесняются новой
активностью файловой системы.
Вывод для эксперта: надёжная картина строится через сопоставление inode, extents, журнала и внешних логов
Linux.
Ext4 • inode • extents • journal
9

10.

Итог: зачем знать внутреннее устройство Ext4
Ext4 показывает не только файлы, но и техническую историю их существования.
inode
extents
journal
Метаданные и связь
объекта с файловой
системой.
Карта физического
размещения данных.
Следы недавних
служебных изменений.
В итоге анализ Ext4 помогает понять, какие файлы
существовали, как они менялись, где лежали данные
и какие следы могли остаться после удаления или
сбоя.
Ext4 • inode • extents • journal
10
English     Русский Rules