Вход/Регистрация
Восстановление данных. Практическое руководство
вернуться

Касперски Крис

Шрифт:
Структура файловой системы

В начале диска расположен загрузочный сектор, который на незагрузочных разделах может быть пустым. За ним по смещению 1024 байта от начала первого сектора лежит суперблок (super-block), содержащий ключевую информацию о структуре файловой системы. В FAT и NTFS эта информация хранится непосредственно в загрузочном секторе. В первую очередь нас будет интересовать 32-разрядное поле

s_log_block_size
, расположенное по смещению
18h
байт от начала суперблока. Здесь хранится размер одного блока (block) или, в терминологии MS-DOS/Windows, кластера, выраженный в виде указателя позиции, на которую нужно сдвинуть число
200h
. В естественных единицах это будет звучать так:
block_size == 200h << s_log_block_size
(байт). То есть если
s_log_block_size
равен нулю, размер одного блока составляет
400h
байт или два стандартных сектора. Структура дискового тома, отформатированного под ext2fs, показана в листинге 8.4.

Листинг 8.4. Структура дискового тома, размеченного под ext2fs

смещение размер описание

– ------- ------ --------

0 1 boot record ; Загрузочный сектор

– - block group 0 -- ; Группа блоков 0

(1024 bytes) 1 superblock ; Суперблок

2 1 group descriptors ; Дескриптор группы

3 1 block bitmap ; Карта свободных блоков

4 1 inode bitmap ; Карта свободных inode

5 214 inode table ; Массив inode

; (сведения о файлах)

219 7974 data blocks ; Блоки данных

; (файлы, каталоги)

– - block group 1 -- ; Группа блоков 1

8193 1 superblock backup ; Копия суперблока

8194 1 group descriptors backup ; Копия дескриптора группы

8195 1 block bitmap ; Карта свободных блоков

8196 1 inode bitmap ; Карта свободных inode

8197 214 inode table ; Массив inode

; (сведения о файлах)

8408 7974 data blocks ; Блоки данных

; (файлы, каталоги)

– - block group 2 -- ; Группа блоков 2

16385 1 block bitmap ; Карта свободных блоков

16386 1 inode bitmap ; Карта свободных inode

16387 214 inode table ; Массив inode

; (сведения о файлах)

16601 3879 data blocks ; Блоки данных

; (файлы, каталоги)

Вслед за суперблоком идут дескрипторы групп (group descriptors) и карты свободного пространства (block bitmap/inode bitmaps которые не имеют большого практического значения для наших целей. Что же касается таблицы inode, расположенной за ними, то она заслуживает более подробного рассмотрения. В ext2fs (как и многих других файловых системах из мира UNIX), так называемый индексный дескриптор (inode) играет ту же самую роль, что и файловая запись в NTFS. Здесь сосредоточена вся информация о файле: тип файла (обычный файл, каталог, символьная ссылка и т.д.), его логический и физический размер, схема размещения на диске, время создания, модификации, последнего доступа или удаления, права доступа, а также ссылки на файл. Формат представления inode описан в листинге 8.5.

Листинг 8.5. Формат представления inode

смещение размер описание

– ------- ------ --------

0 2 i_mode ; Формат представления

2 2 i_uid ; Uid пользователя

4 4 i_size ; Размер файла в байтах

8 4 i_atime ; Время последнего доступа к файлу

12 4 i_ctime ; Время создания файла

16 4 i_mtime ; Время модификации файла

20 4 i_dtime ; Время удаления файла

24 2 i_gid ; Gid группы

26 2 i_links_count ; Количество ссылок на файл (0 — файл удален)

28 4 i_blocks ; Количество блоков, принадлежащих файлу

32 4 i_flags ; Различные флаги

36 4 i_osdl ; Значение, зависящее от ОС

  • Читать дальше
  • 1
  • ...
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: