Понимание файловой системы ext2

676
Wuffers

Я пытаюсь найти удаленные inode в файловой системе ext2. И это подход, который я использую. Однако я чувствую, что делаю что-то не так.

  1. Я сначала ищу 1024 байта до начала суперблока

  2. Я узнал, что размер блока составляет 1024 байта, поэтому таблица дескрипторов группы начинается со смещения 2048.

  3. Таблица дескрипторов группы имеет дескриптор группы для каждой группы блоков, верно? Поэтому я вычисляю количество дескрипторов групп или групп блоков: общее количество inode / inode на группу. Это дает мне значение 8, что означает, что у меня есть 8 дескрипторов групп в моей таблице дескрипторов групп блоков.

  4. Я прочитал поле first_inode_table для всех 8 дескрипторов группы. Дескрипторы группы имеют длину 32 байта

    Так вот где я запутался. Таблица inode для дескриптора первой группы дает мне 260. Значит ли это, что для доступа к таблице inode для первой группы блоков я делаю 260 * размера блока?

  5. Добравшись туда, я читаю поле dtime, которое сообщает нам последнее удаленное время. Если это> 0, это означает, что он был удален.

    Итак, еще одна путаница, которую я имею, заключается в том, что говорится, что первые 11 записей таблицы inode зарезервированы. Так что это не должно быть проблемой, пока я просматриваю все записи inode таблицы inode, верно?

Мой подход правильный? Пожалуйста, укажите мне правильное направление, если вы видите что-то не так.

8
Рассуждения верны. Ошибка была связана с другой проблемой. 13 лет назад 0
@Catie Если вы решили эту проблему, следует ли добавить ответ самостоятельно или просто удалить вопрос. :-) John Parker 13 лет назад 4
добавь ответ сам пожалуйста kalaracey 13 лет назад 1
На вопрос был дан ответ, так как это была еще одна проблема, которая была решена. Больше нет проблем, и очень маловероятно, что Кэти вернется, поэтому, пожалуйста, помогите получить этот вопрос из списка без ответа ... Tom Wijsman 13 лет назад 1

0 ответов на вопрос

Похожие вопросы