Особенности файловых систем, экскурс в историю
Файловая система NT4 (NTFS 1.2) не сохраняла номера записей главной файловой таблицы (Master File Table, MFT). И в случае фрагментирования таблицы приходилось иметь дело с миллионами файловых записей, упорядоченных в дереве по присвоенным номерам. При этом было крайне сложно установить, какой номер относится к какой записи. Алгоритмы для распознавания номеров отличались крайней нестабильностью и сложностью, а кроме того требовали массы ресурсов. Начиная с операционной системы Windows XP, номер записи главной файловой таблицы хранился, как и планировалось с самого начала, в самой записи MFT, что упростило восстановление данных.
При обновлении тома, например, когда созданный в NT4 том впервые подключался к Windows XP, все записи оставались в старом формате — без номеров. В новый формат система переводила их только при внесении изменений в файл, на который ссылались записи. С подобными гибридными томами нам приходилось сталкиваться еще несколько лет. Когда, в конце концов, пользователи прекратили форматировать свои диски под систему NT4, все записи получили свои номера. А программное обеспечение для восстановления данных наконец перестало поддерживать старые версии NTFS.
Похожая проблема возникала и со старой версией ext2: суперблок не содержал номера группы, к которой принадлежал. По этой самой причине не удавалось использовать задуманную разработчиками избыточность. Проблема заключалась в том, что при отказе первого суперблока можно было найти оставшиеся. Но первый обнаружить не удавалось, даже зная все суперблоки. Подобный подход не давал ни малейшего шанса найти файлы. В обновленной версии ext2 суперблок уже содержит номера соответствующих групп, что существенно упрощает восстановление данных.