Второе рождение утерянных данных под LINUX'ом


         

с FAT, такая схема хранения


По сравнению с FAT, такая схема хранения информации об размещении, является намного более устойчивой к разрушениям. Она как бы "размазывается" по всему диску и уничтожить все блоки адресации можно разве что динамитом. К тому же, номера блоков хранятся в прямом виде "как есть", а это значит, что для каждого блока файла мы может быстро найти соответствующий ему косвенный блок, даже если inod'а полностью разрушена.



Рисунок 4 описание порядка размещения файла на диске, иерархия непосредственных и косвенных блоков

Имена файлов хранятся в директориях и в inode их нет. Директории представляют собой обычные файлы… ну, хорошо, не совсем обычные, а специальные служебные файлы, содержащие массив записей типа:

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

------- ------- -----------

      0       4 inode             ; ссылка на inod'у

      4       2 rec_len    ; длина данной записи

      6       1 name_len   ; длина имени файла

      7       1 file_type  ; тип

файла

      8     ... name       ; имя файла

Листинг 3 формат представления массива директорий

Поле inode содержит порядковый номер inode, которому соответствует данное имя файла; поле rec_len задает длину текущей записи, а name_len – длину имени файла. Само имя хранится в ASCII виде сразу после длины.


Содержание  Назад  Вперед