Ковырялся с NTFS образом партиции, которая была создана еще под Windows NT.
В $MFT файле есть невалидная MFT запись: ее размер 1 сектор (вместо двух как у остальных), забита она исключительно значениями 0xFF, следующая валидная MFT запись начинается со следующего сектора (т.е. не выровнена на границу кластера).
Номер записи 17, т.е. не из области для обычных файлов.
$BadClus посмотреть не успел. Но судя по названию там должны быть плохие кластеры.
Вопрос: как обрабатывать такую невалидную MFT запись ведь из-за нее формула «начальный_сектор_MFT + номер_MFT_записи * размер_MFT_записи_в_секторах» работать не будет.
Здравствуйте, DirtyGarry, Вы писали:
DG>Вопрос: как обрабатывать такую невалидную MFT запись ведь из-за нее формула «начальный_сектор_MFT + номер_MFT_записи * размер_MFT_записи_в_секторах» работать не будет.
Эта формула и так не работает. MFT может быть фрагментирована и разбросана по разделу. Только первые 16 записей гарантированно попадают под вашу формулу.
DG>>Вопрос: как обрабатывать такую невалидную MFT запись ведь из-за нее формула «начальный_сектор_MFT + номер_MFT_записи * размер_MFT_записи_в_секторах» работать не будет. P>Эта формула и так не работает. MFT может быть фрагментирована и разбросана по разделу. Только первые 16 записей гарантированно попадают под вашу формулу.
Гарантированно не более 4х
Re[2]: NTFS, $MFT, невалидная MFT запись
От:
Аноним
Дата:
17.05.13 09:55
Оценка:
Здравствуйте, Psybot, Вы писали:
P>Эта формула и так не работает. MFT может быть фрагментирована и разбросана по разделу. Только первые 16 записей гарантированно попадают под вашу формулу.
У меня сложилось впечатление, что я эту запись не нашел, читая $MFT с помощью run list-ов. Перепроверю.