Обнаружение и исправление проблем пространства диска в томах NTFS

В этой статье рассмотрено, как проверить распределение дискового пространства файловой системы NTFS, чтобы обнаружить файлы и папки с оскорбленными файлами или найти повреждения громкости на компьютерах Microsoft Windows Server 2003.

Применяется к:   Windows Server 2003
Исходный номер КБ:   814594

Сводка

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

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

  • Размер кластера тома NTFS слишком велик для хранимых там файлов среднего размера.
  • Атрибуты файлов или разрешения NTFS мешают Windows Explorer или командной Windows от отображения или доступа к файлам или папкам.
  • Путь папки превышает 255 символов.
  • Папки или файлы содержат недействительные или зарезервированные имена файлов.
  • Метафили NTFS (например, таблица master File) выросли, и их невозможно отосвоить.
  • Файлы или папки содержат альтернативные потоки данных.
  • Коррупция NTFS приводит к сообщению о свободном пространстве в качестве используемой.
  • Другие функции NTFS могут вызывать путаницу при распределении файлов.

Следующие сведения помогут оптимизировать, отремонтировать или получить более полное представление об использовании дискового пространства в томах NTFS.

Слишком большой размер кластера

Только файлы и папки, которые включают внутренние метафили NTFS, такие как таблица master File (MFT), индексы папок и другие, могут потреблять пространство диска. Эти файлы и папки потребляют все выделения пространства файлов с помощью нескольких кластеров. Кластер — это коллекция соотественных секторов. Размер кластера определяется размером раздела при форматировании тома.

Дополнительные сведения о кластерах см. в сведениях о размере кластеров по умолчанию для NTFS, FAT и exFAT.

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

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

  1. Нажмите кнопку Начните, нажмите кнопку Выполнить, введите cmd, а затем нажмите кнопку ОК.

  2. В командной подсказке введите команду: chkdsk d: .

    Где d: это буква диска, которую необходимо проверить.

  3. Нажмите кнопку ОК.

  4. Просмотр результатов. Например:

    4096543 общего дискового пространства KB. <--- общая отформатированная емкость диска.
    2906360 КБ в файлах 19901 г. <--- пространства, используемом данными файлов пользователя.
    6344 КБ в 1301 индексах. <--- пространства, используемой индексами NTFS.
    0 КБ в плохих секторах. <--- space проиграла плохим секторам.
    49379 КБ, используемая системой. <--- содержит метафили MFT и других NTFS.
    22544 KB занят файлом журнала. <--- NTFS Log file - (Можно корректировать с помощью chkdsk /L:size)
    1134460 доступно на диске. <--- свободное пространство диска

    4096 bytes в каждом блоке распределения. <--- размер кластера. (4K)
    1024135 единицы общего распределения на диске. <--- общие кластеры на диске.
    283615 единицы распределения, доступные на диске. <--- доступные бесплатные кластеры.

Примечание

Умножьте каждое значение, которое отчеты о выходе в килобайтах (KB) будут умножаться на 1024, чтобы определить точные значения byte. Например: 2906360 x 1024 = 2 976 112 640 бит. Эти сведения можно использовать для определения использования дискового пространства и размера кластера по умолчанию.

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

  1. Нажмите кнопку Начните, нажмите кнопку "Мой компьютер", а затем дважды щелкните букву диска (например, D) тома, о котором идет речь, чтобы открыть объем и отобразить папки и файлы, которые содержит корень.

  2. Щелкните любой файл или папку, а затем выберите Выберите все в меню Редактирование.

  3. При выборе всех выбранных файлов и папок щелкните правой кнопкой мыши любой файл или папку, щелкните Свойства, а затем нажмите вкладку General.

    Общая вкладка отображает общее количество файлов и папок в целом томе и содержит две статистики размера файлов: РАЗМЕР и РАЗМЕР НА ДИСКЕ.

Если вы не используете сжатие NTFS для файлов или папок, содержащихся в томе, разница между РАЗМЕРом и РАЗМЕРОМ НА ДИСКе может представлять некоторое впустую пространство, так как размер кластера больше необходимого. Может потребоваться использовать меньший размер кластера, чтобы значение SIZE ON DISK было максимально приближено к значению SIZE. Большая разница между размером НА ДИСКе и значением SIZE указывает на то, что размер кластера по умолчанию слишком велик для среднего размера файла, хранимого в томе.

Изменить размер кластера можно только переформатированием тома. Для этого необходимо заказать объем, а затем форматизировать его с помощью команды формата и переключателя, чтобы указать /a соответствующее распределение. Например: format D: /a:2048 (В этом примере используется размер кластера 2-KB).

Примечание

Кроме того, можно включить сжатие NTFS для восстановления пространства, потерянного из-за неправильного размера кластера. Однако это может привести к снижению производительности.

Атрибуты файлов или разрешения NTFS

И Windows, и команда списка каталогов отображают общую статистику файлов и папок только для тех файлов и папок, к которые у вас есть dir /a /s разрешения на доступ. По умолчанию файлы, скрытые файлы и защищенные файлы операционной системы, исключаются. Это поведение может Windows explorer или команду dir для отображения неточных итогов файлов и папок и статистики размеров.

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

  1. Нажмите кнопку Начните, нажмите кнопку "Мой компьютер", а затем дважды щелкните букву диска (например: D) тома. Это открывает объем и отображает папки и файлы, которые содержит корень.
  2. В меню Инструменты щелкните Параметры папки и нажмите вкладку Просмотр.
  3. Выберите поле Показать скрытые файлы и папки, а затем щелкните, чтобы очистить поле Скрыть защищенные файлы операционной системы.
  4. Щелкните Да, когда вы получите предупреждение, а затем нажмите кнопку Применить. Это изменение позволяет Windows Explorer и команду общую сумму всех файлов и папок, которые содержит том, что пользователь имеет разрешения dir /a /s на доступ.

Чтобы определить папки и файлы, к которые нельзя получить доступ, выполните следующие действия:

  1. В командной подсказке создайте текстовый файл из вывода dir /a /s команды.

    Например: В командной подсказке введите следующую команду: dir d: /a /s >c:\d-dir.txt .

  2. Запустите мастер резервного копирования или восстановления.

    1. Нажмите кнопку Начните, нажмите кнопку Выполнить, введите ntbackup, а затем нажмите кнопку ОК.
    2. Щелкните расширенный режим.
  3. Щелкните Параметры в меню Tools, щелкните вкладку Резервное копирование журнала, щелкните Подробный и нажмите кнопку ОК.

  4. В утилите резервного копирования щелкните вкладку Резервное копирование, а затем выберите поле для всего затронутого тома (например: D:), а затем нажмите кнопку Начните резервное копирование.

  5. После завершения резервного копирования откройте отчет о резервном копировании и сравните папку для папки с выходом журнала NTBackup с d-dir.txt, сохраненным на шаге 1.

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

После обнаружения файлов, к которые вы не имеете доступа, можно добавить или изменить разрешения с помощью вкладки Security во время просмотра свойств файла или папки в Windows Explorer. По умолчанию вы не можете получить доступ к папке сведения о томе системы. Чтобы включить папку в команду, необходимо добавить правильные dir /a /s разрешения.

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

D:\folder_name\ не доступен

Доступ запрещен

Если у вас есть такие папки, обратитесь в службы поддержки продуктов Майкрософт для получения дополнительной помощи.

Имена недействительных файлов

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

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

Файл или папка для переименования ошибок

Не удается переименовать файл: невозможно читать из исходных файлов или дисков.

ИЛИ

Файл или папка для удаления ошибок

Не удается удалить файл. Не удается прочитать из источника файла или диска.

Если у вас есть папки или файлы, которые нельзя удалить или переименовать, обратитесь в службы поддержки продуктов Майкрософт.

Расширение NTFS Master File Table (MFT)

Когда создается и форматизируется том NTFS, создаются метафилы NTFS. Один из этих метафилов называется Master File Table (MFT). Он небольшой при его создания (около 16 КБ), но он растет по мере создания файлов и папок на томе. Когда файл создается, он вошел в MFT в качестве сегмента записей файлов (FRS). FrS всегда составляет 1024 bytes (1 KB). По мере того, как файлы добавляются в том, MFT растет. Однако при удалении файлов связанные frSs помечены как бесплатные для повторного использования, но общее распределение frSs и связанных MFT остается. Поэтому после удаления большого количества файлов пространство, используемого MFT, не возвращается.

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

Например:

Фрагментация master File Table (MFT)
Общий размер MFT = 26 203 КБ
Количество записей MFT = 21 444
Процент использования MFT = 81%
Общие фрагменты MFT = 4

Однако для получения дополнительных сведений о том, сколько пространства (накладных расходов) использует весь NTFS, выполните команду chkdsk.exe, а затем выполните просмотр вывода для следующей строки:

В использовании по системе.

В настоящее время только сторонние defragmenters консолидировать неиспользование записей FRS MFT и восстановить неиспользование MFT выделенное пространство.

Альтернативные потоки данных

NTFS позволяет файлам и папкам содержать альтернативные потоки данных. С этой функцией можно связать несколько распределений данных с одним файлом или папкой. Использование альтернативных потоков данных в файлах и папках имеет следующие ограничения:

  • Windows Explorer и команда dir не сообщают данные в альтернативных потоках данных в рамках статистики размера файла или объема. Вместо этого они показывают только общие bytes для основного потока данных.
  • Выход из chkdsk точно сообщает пространство, используемого пользовательскими файлами данных, включая альтернативные потоки данных.
  • Квоты дисков точно отслеживают и сообщают о всех распределениях потока данных, которые являются частью файлов данных пользователя.
  • NTBackup записи количество bytes резервного копирования в отчете резервного копирования журнала. Однако он не показывает, какие файлы содержат альтернативные потоки данных. Он также не показывает точные размеры файлов, которые включают данные в альтернативных потоках.

Коррупция файловой системы NTFS

В редких случаях метафилы NTFS $MFT или $BITMAP могут быть повреждены и привести к потерям дискового пространства. Эту проблему можно определить и устранить, запуская chkdsk /f команду с помощью тома. В конце chkdsk вы получите следующее сообщение, если необходимо настроить ошибки $BITMAP:Исправление в атрибуте BITMAP таблицы MFT. CHKDSK обнаружил свободное пространство, отмеченное как выделенное в bitmap тома. Windows в файловую систему внесены изменения.

Другие функции NTFS, которые могут вызвать путаницу в распределении файлов

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

Твердая ссылка — это запись каталога для файла независимо от того, где данные файла находятся в этом томе. Каждый файл имеет по крайней мере одну твердую ссылку. В томах NTFS каждый файл может иметь несколько жестких ссылок, поэтому один файл может отображаться во многих папках (или даже в одной папке с разными именами). Так как все ссылки относятся к одному файлу, программы могут открывать любые ссылки и изменять файл. Файл удаляется из файловой системы только после удаления всех ссылок на него. После создания жесткой ссылки программы могут использовать ее, как и любое другое имя файла.

Примечание

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

Точки крепления тома и стыки каталогов позволяют пустой папке на томе NTFS указать на корневой или подмостки другого тома. Windows Обозреватель и команда dir/s следуют точке репара, подсчитывают все файлы и папки в томе назначения, а затем включают их в статистику тома хостов. Это может ввести в заблуждение, что на томе хостов используется больше места, чем на самом деле.

В сводке вы можете использовать выход chkdsk, NTBackup GUI или журналы резервного копирования, а также просмотр квот дисков, чтобы определить, как пространство диска используется в томе. Однако Windows Explorer и команда dir имеют некоторые ограничения и недостатки при их назначении.