Что такое mft диск с

Опубликовано: 16.05.2024

В предыдущих статьях мы неоднократно затрагивали тему повреждений HDD. Но что случится, если эти повреждения приобретут массовый характер во всего лишь одном накопителе? Такое развитие событий приведет к неизбежному сбою главной таблицы файлов диска и ряду других неприятных последствий.

Что такое главная таблица файлов?

Главная или Общая таблица файлов диска (Master File Table, MFT) — документ, хранящийся исключительно в файловой системе NTFS. Он является важнейшим винтиком в механизме работы данной системы, поскольку хранит в себе такую информацию как размер, дату и время записи, содержимое файлов.

Любой документ, загружаемый в NTFS, будет записан и в MFT. В случае удаления, файловое пространство будет помечено как свободное и находящееся в ожидании дальнейшей перезаписи. Если же главная таблица файлов была повреждена, все документы в разделе NTFS станут недоступными.

Симптомы повреждения

Как и в случае с любой другой ошибкой, повреждения MFT также не проходят бесследно. Они проявляются следующим образом:

Большинство руководств, которые вы найдете на просторах интернета предлагают одно единственное решение для сложившейся ситуации — использование утилиты CHKDSK . Несмотря на ее эффективность в работе с рядом других ошибок, с MFT, к сожалению, она работает далеко не всегда. Причиной тому является степень поврежденности диска. Если главная таблица раздела пострадала слишком сильно, процесс работы CHKDSK будет досрочно прерван со следующим сообщением:

The type of the file system is NTFS.
Volume label Work Folder.
Corrupt master file table. Windows will attempt to recover master file table from disk.
Windows cannot recover master file table. CHKDSK aborted.

Причины ошибки

В большинстве случаев, повреждение раздела NTFS смело свидетельствует о наличии сбоя главной таблицы файлов. Причин, способных спровоцировать возникновение неполадки, существует множество, но мы разберем самые основные:

  • Сбой в работе операционной системы. Например, BSOD (синий экран смерти).
  • Вирус, предназначенный для повреждения MFT.
  • Неправильное извлечение диска (вы могли отключить его в момент неполного завершения работы компьютера).
  • Сбой приложения.
  • Наличие битых секторов.

Вне зависимости от причины возникновения неполадки, всегда есть шанс на восстановление диска и данных на нем. Каждая из приведенных ниже инструкций позволит своей простотой существенно сэкономить ваше личное время с большой долей вероятности вернуть HDD к жизни. Приступим!

Восстановление поврежденной таблицы файлов

Дефрагментация диска

В некоторых случаях причиной отказа работы MFT и, как следствие, всей системы NTFS является чрезмерное фрагментирование диска. Решить этот вопрос можно следующим образом:

1. Откройте Мой компьютер .

2. Щелкните правой кнопкой по логическому разделу или физическому диску, с которым предстоит работать, и перейдите в Свойства .

Содержание

Строение

Метафайлы

Метафайлы NTFS — служебные файлы (области), каждый из которых выполняет ту или иную функцию файловой системы NTFS. Все метафайлы находятся в корневом каталоге NTFS тома, недоступном ОС.

  • $MFT — основная таблица MFT
  • $MFTmirr — копия первых шестнадцати записей MFT (размещенная ровно посередине тома)
  • $Boot — загрузчик (только на первичном томе)
  • . — (с точкой как название) корневой каталог
  • $LogFile — журнал файловой системы
  • $Volume — служебная информация (метка и ID тома, версия файловой системы, т.д.)
  • $Bitmap — карта свободного места тома
  • $AttrDef — список стандартных атрибутов файлов на томе
  • $Quota — записи с правами пользователей на использование дискового пространства (квотами)
  • $Secure — дескрипторы безопасности файловых объектов (права доступа)

Связь с NTFS

В ядре файловой системы NTFS содержится файл, который называется основной таблицей файлов (MFT). В файле MFT содержится как минимум одна запись для каждого файла тома NTFS, включая сам файл MFT.

Поскольку средства дефрагментации томов NTFS не могут перемещать записи MFT, а также из-за того, что значительная фрагментация MFT может негативно влиять на быстродействие системы, NTFS резервирует для MFT дисковое пространство, чтобы по мере увеличения размера MFT подвергался минимальной фрагментации.

Записи MFT используются для описания файлов, которым они соответствуют. Все сведения о файле, включая его размер, дату и время создания, разрешения и содержимое, хранятся либо в записях MFT, либо в другом местоположении, не относящемся к MFT, но указанном в его записях.

По мере появления новых файлов в томе NTFS в файл MFT добавляются новые записи, и, таким образом, размер MFT увеличивается. При удалении файлов из тома NTFS соответствующие записи в файле MFT помечаются как свободные и могут использоваться повторно, однако размер MFT при этом не сокращается. Таким образом, дисковое пространство, используемое этими записями, остается недоступным.

Из-за важности MFT и возможности негативных последствий излишней фрагментации этого файла для быстродействия системы в NTFS прилагаются все усилия, чтобы этот файл оставался непрерывным. NTFS резервирует определенный процент пространства тома, который может использоваться исключительно файлом MFT, пока остальное пространство тома не будет полностью исчерпано. Таким образом, пространство из этой зоны MFT может выделяться для файлов и папок только после того, как все остальное пространство будет использовано.

В зависимости от среднего размера файлов и других критериев при заполнении диска зарезервированная для MFT зона или незарезервированное дисковое пространство могут исчерпываться в первую очередь.

Тома с небольшим количеством относительно больших файлов сначала исчерпывают незарезервированное дисковое пространство, в то время как тома с большим числом относительно небольших файлов сначала исчерпывают пространство, зарезервированное для MFT. В любом случае, при переполнении одной из этих областей начинается фрагментация MFT. При переполнении незарезервированного дискового пространства из зоны MFT начинает выделяться пространство для пользовательских файлов и папок, что приводит к фрагментации MFT. При переполнении зоны MFT пространство для новых записей MFT начинает выделяться из незарезервированного дискового пространства, что снова приводит к фрагментации MFT. [2]

Если количество файлов в каталоге невелико, то список файлов может быть резидентным в записи в MFT, являющейся каталогом. В этом случае он называется небольшим каталогом. Небольшой список файлов содержит значения атрибутов файла. По умолчанию это имя файла, а также номер записи MTF, содержащей начальную запись файла.

По мере того, как каталог растет, список файлов может потребовать нерезидентной формы хранения. Однако начальная часть списка всегда остается резидентной в корневой записи каталога в таблице MFT. Имена файлов резидентной части списка файлов являются узлами B-дерева. Остальные части списка файлов размещаются вне MFT. Для их поиска используется специальный атрибут "размещение списка" (Index Allocation - IA), представляющий собой набор номеров кластеров, которые указывают на остальные части списка. Одни части списков являются листьями дерева, а другие являются промежуточными узлами, то есть содержат наряду с именами файлов атрибут Index Allocation, указывающий на списки файлов более низких уровней. [3]

Если у вас присутствует желание оптимизировать свой компьютер и выжать из него максимум, то эта инструкция для вас.

Здесь будет рассмотрен процесс оптимизации главной таблицы файлов (« Master File Table» – MFT), а именно ее дефрагментации.

Для начала узнаем, что такое MFT.

У нас есть жесткий диск. В момент создания на жестком диске логического раздела (С:, D:, любого количества дополнительных разделов) в начале диска резервируется 12.5 % под главную таблицу файлов.

В этой таблице файлов располагается вся служебная информация, которая нужна компьютеру для работы с файлами, папками. Тут же записаны все адреса кусочков блоков, разбросанных по всему диску, чтобы компьютер мог при необходимости собрать их воедино.


Со временем логический диск заполняется. Когда степень заполнения достигнет 80 %, то данные перестают помещаться в главную таблицу файлов. MFT начинает разъезжаться по диску. Кусочки MFT появляются в различных местах логического диска.


В итоге компьютеру приходится сильно дергать жестким диском, чтобы разыскать информацию о файлах и только потом найти файлы на поверхности жесткого диска.

Результатом становится падение быстродействия компьютера.

Чтобы этого не произошло, нужно следить за размером данных, хранящихся на вашем жестком диске.

Если фрагментация все-таки произошла, то придется обратиться к программам, которые способны собрать воедино MFT. Сложность заключается в том, что лишь несколько программ способны на это. Обычная дефрагментация здесь не поможет.

Чтобы найти нужную программу, заходим на сайт «googleи в поиске набираем слово «contig». Contig – специальная программа, разработанная Марком Руссиновичем. Переходим на страницу программы.


Загрузить программу на свой компьютер можно, нажав на ссылку в правом верхнем углу. Программа небольшая – всего 100 Кбайт.


Теперь переходим в меню «Пуск». Далее в пункт «Стандартные». Здесь находим «Командную строку».


Нажимаем правой кнопкой мыши на ярлык. Запускаем программу от имени администратора.


Стандарт файловой системы NTFS версии 3.1 появился в 2001 году с выходом на рынок Windows XP и с тех пор не претерпел фундаментальных изменений. В Windows 10 также используется NTFS v3.1. Архитектуру и особенности внутреннего устройства этой файловой системы Крис Касперски подробно описал в своей книге «Восстановление данных», которая сейчас готовится к переизданию. Мы публикуем отрывок из этой книги, где Крис рассказывает о том, что представляет собой NTFS изнутри.

NTFS с высоты птичьего полета

Основным структурным элементом всякой файловой системы является том (volume), в случае с FAT совпадающий с разделом (partition). NTFS поддерживает тома, состоящие из нескольких разделов (см. рис.). Будем для простоты считать, что том представляет собой отформатированный раздел (то есть раздел, содержащий служебные структуры файловой системы).

Обычный и распределенный тома

Обычный и распределенный тома

Большинство файловых систем трактуют том как совокупность файлов, свободного дискового пространства и служебных структур файловой системы, но в NTFS все служебные структуры представлены файлами, которые (как это и положено файлам) могут находиться в любом месте тома, при необходимости фрагментируя себя на несколько частей.

Основным служебным файлом является главная файловая таблица, $MFT (Master File Table) — своеобразная база данных, хранящая информацию обо всех файлах тома: их именах, атрибутах, способе и порядке размещения на диске. Каталог также является файлом особого типа, со списком принадлежащих ему файлов и вложенных подкаталогов. Важно подчеркнуть, что в MFT присутствуют все файлы, находящиеся во всех подкаталогах тома, поэтому для восстановления диска наличия файла $MFT будет вполне достаточно.

Остальные служебные файлы, называемые метафайлами (metafiles) или метаданными (metadata), всегда имеют имена, начинающиеся со знака доллара ( $ ), и носят сугубо вспомогательный характер, интересный только самой файловой системе. К ним в первую очередь относится: $LogFile — файл транзакций, $Bitmap — карта свободного/занятого пространства, $BadClust — перечень плохих кластеров. Текущие версии Windows блокируют доступ к служебным файлам с прикладного уровня (даже с правами администратора!), и всякая попытка открытия или создания такого файла в корневом каталоге обречена на неудачу.

Классическое определение, данное в учебниках информатики, отождествляет файл с именованной записью на диске. Большинство файловых систем добавляет к этому понятие атрибута (attribute) — некоторой вспомогательной характеристики, описывающей время создания, права доступа и так далее. В NTFS имя файла, данные файла и его атрибуты полностью уравнены в правах. Иначе говоря, всякий файл NTFS представляет собой совокупность атрибутов, каждый из которых хранится как отдельный поток байтов. Поэтому, во избежание путаницы, атрибуты, хранящие данные файла, часто называют потоками (streams).

Каждый атрибут состоит из тела (body) и заголовка (header). Атрибуты подразделяются на резидентные (resident) и нерезидентные (non-resident). Резидентные атрибуты хранятся непосредственно в $MFT , что существенно уменьшает грануляцию дискового пространства и сокращает время доступа. Нерезидентные атрибуты хранят в $MFT лишь свой заголовок, описывающий порядок размещения атрибута на диске.

Назначение атрибута определяется его типом (type), представляющим собой четырехбайтное шестнадцатеричное значение. При желании атрибуту можно дать еще и имя (name), состоящее из символов, входящих в соответствующее пространство имен (namespace). Подавляющее большинство файлов имеет по меньшей мере три атрибута. К их числу относится стандартная информация о файле (время создания, модификации, последнего доступа, права доступа), которая хранится в атрибуте типа 10h , условно обозначаемом $STANDARD_INFORMATION . Ранние версии Windows NT позволяли обращаться к атрибутам по их условным обозначениям, но начиная с Windows 2000 мы лишены этой возможности. Полное имя файла (не путать с путем!) хранится в атрибуте типа 30h ( $FILE_NAME ).

Если у файла есть одно или несколько альтернативных имен, таких атрибутов может быть и несколько. Здесь же хранится ссылка (file reference) на родительский каталог, позволяющая разобраться, к какому каталогу принадлежит данный файл или подкаталог. По умолчанию данные файла хранятся в безымянном атрибуте типа 80h ( $DATA ). Однако при желании прикладные программы могут создавать дополнительные потоки данных, отделяя имя атрибута от имени файла знаком двоеточия (например: ECHO xxx > file:attr1; ECHO yyy > file:attr2; more < file:attr1; more < file:attr2 ).

Изначально в NTFS была заложена способность индексации любых атрибутов, значительно сокращающая время поиска файла по заданному списку критериев (например, времени последнего доступа). Индексы хранятся в виде двоичных деревьев, поэтому среднее время выполнения запроса оценивается как O(lg n) . На практике в большинстве драйверов NTFS реализована индексация лишь по имени файла. Как уже говорилось ранее, каталог представляет собой файл особого типа — файл индексов. В отличие от FAT, где файл каталога представляет собой единственный источник данных об организации файлов, в NTFS файл каталога используется лишь для ускорения доступа к содержимому каталога. Он не является обязательным, так как ссылка на родительский каталог всякого файла в обязательном порядке присутствует в атрибуте его имени ( $FILE_NAME ).

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakepчтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «XakepТогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

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

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

Известный российский хакер. Легенда ][, ex-редактор ВЗЛОМа. Также известен под псевдонимами мыщъх, nezumi (яп. 鼠, мышь), n2k, elraton, souriz, tikus, muss, farah, jardon, KPNC.

Программное обеспечение для восстановления прошло долгий путь, и программное обеспечение для восстановления может восстанавливать файлы с устройств хранения или жестких дисков, даже если они полностью отформатированы. Мы лично проверили несколько программ для восстановления данных, и да, они действительно работают, даже если частично. В этом посте мы увидим, как это работает, и как вы можете очистить жесткий диск, включая MFT, чтобы предотвратить восстановление удаленных файлов.

Что такое основная файловая таблица (MFT)

В Таблица основных файлов специфичен для NTFS, что похоже на бортовой журнал. Он ведет учет всех файлов, доступных на этом устройстве хранения. Помимо этого, другая информация, такая как его размер, отметки времени и даты, разрешения и содержимое данных, хранится либо в MFT. По мере того, как добавляется все больше и больше файлов, объем продолжает расти. Это основная причина, по которой ОС резервирует часть хранилища, которая меньше всего доступного пространства.

Когда файл удаляется, запись все еще существует, как и файл. Однако в MFT запись для файла помечается как свободная. Таким образом, когда поступает новый файл, место можно использовать повторно. До тех пор данные остаются там, как есть, и именно так работает программа восстановления. Они посмотрят на таблицу MFT и покажут вам удаленные файлы, а также позволят вам восстановить их.

Как протереть жесткий диск и очистить MFT

Давайте взглянем на два бесплатных программного обеспечения, которые могут вам в этом помочь. Хотя вы можете выполнять эти операции часто, на SSD это, скорее всего, сократит срок службы SSD.

1]Cyrobo Prevent Recovery

Интерфейс прост. Запустите программу, и она обнаружит разделы, подключенные к компьютеру.

  • Выберите раздел, для которого вы хотите запустить операции защиты от восстановления.
  • На следующем экране вы можете выбрать вариант перезаписи данных с использованием пробелов, случайных символов, случайных чисел и специальных технических знаков.
  • Затем вам нужно выбрать тип безопасности, но, поскольку это бесплатная версия, вы не можете. Так что жмите Далее.
  • Наконец, вы можете выбрать очистку таблиц MFT в процентах от свободного диска, подлежащего перезаписи. Рекомендуется 100%.
  • Опубликуйте это, программное обеспечение будет искать удаленные файлы, перезаписывать их, а также очищать записи MFT.

Время, необходимое для этого, будет зависеть от скорости жесткого диска. На одну перезапись на моем жестком диске ушло около 50 минут.

2]CCleaner Wipe MFT Free Space

Очистить диски свободного места

Когда вы настраиваете это, CCleaner продолжает удалять файлы безвозвратно, используя технику свободного пространства MFT, каждый раз, когда вы удаляете файл.

Привод стеклоочистителя

Это полезно, когда вы передаете свой компьютер кому-то другому или если у вас не была включена вышеупомянутая опция ранее.

  • Перейдите в Инструменты> Очиститель диска.
  • Выберите Free Space only под Wipe.
  • Выберите тип протирания безопасности, который может быть от одного до тридцати пяти раз.
  • Выберите один или несколько дисков
  • Затем нажмите на Вытирать чтобы запустить процесс.

Работает ли удаление основной таблицы файлов?

Это сложный вопрос, потому что действительно важно, какой алгоритм безопасности использовался для удаления данных. Существует высококлассное программное обеспечение, которое может извлекать данные, даже если вы их однажды стерли, или может нарушить алгоритм, который использовался для очистки данных. Мы протестировали его с помощью программы восстановления, которую я часто использую для тестирования восстановления, и я убедился, что она работает. Однако на этот раз восстановить данные при сканировании не удалось.

Cyrobo Prevent Recovery результат

Мы видели сотни файлов во временной папке и корзине, но ни один из них не мог быть просмотрен после восстановления. Расширенное сканирование не смогло восстановить ни один файл, но оно показало имена файлов кое-где.

Результат CCleaner Wipe MFT Free Space

Результаты CCleaner, где мы использовали функцию Wipe Driv e (только свободное пространство), были интересными. Все, что мы могли видеть, это тонны файлов с именем ZZZZ как при быстром, так и при расширенном сканировании. Похоже, CCleaner справился намного лучше, чем Cyrobo Prevent Recovery.

Я считаю, что для потребителей полезно иметь такие варианты. Некоторые OEM-производители комплектуют программное обеспечение для очистки своих дисков, но если вам трудно доверять, используйте одно из них. Также, если это важно, я бы посоветовал поискать профессиональное программное обеспечение.

Связанное чтение: Программное обеспечение File Shredder.

Читайте также: