Команда fsutil behavior позволяет проверить или изменить несколько характеристик конфигурации томов FAT или NTFS. С помощью данной команды можно изменить следующие параметры конфигурации Windows:

  • Поддержка преобразования имен 8.3
  • Отметка времени последнего доступа к домену
  • Уведомление о дисковых квотах
  • Память выгружаемого пула
  • Размер таблицы Master File Table

С точки зрения диагностики и решения возникающих проблем последние два конфигурационных параметра являются самыми важными. При добавлении физической оперативной памяти в компьютер, операционная системе Windows не увеличивает автоматически доступных пул выгружаемой памяти. Если производительность системы снижается во время открытия или закрытия большого количества файлов, то увеличение пула выгружаемой памяти с помощью команды fsutil behavior может решить возникшую проблему.

Использование файловой системы NTFS подразумевает выделение дискового пространства для будущего увеличения размера таблиц MFT. Эта область дискового пространства называется зона (MFT Zone). Если MFT Zone оказывается недостаточно большой, таблица MFT может стать больше выделенного для этих целей дискового пространства, в этом случае возникает фрагментация таблицы MFT и производительность файловой системы снижается. Такую проблему производительности можно исправить с помощью команды fsutil behavior. Для этого необходимо изменить размер выделенного дискового пространства для таблицы MFT.

После того, как были показаны самые важные примеры использования утилиты fsutil behavior можно рассмотреть синтаксис этой команды:

fsutil behavior query <disable8dot3 | allowextchar | disablelastaccess | quotanotify | memoryusage | mftzone>
fsutil behavior set { disable8dot3 < 0 | 1 > | allowextchar < 0 | 1 > | disablelastaccess < 0 | 1 > | quotanotify <частота> | memoryusage <объем памяти> | mftzone <размер зоны> }

Параметры команды query позволяют получить информацию о значении одного из параметров. Команда set позволяет внести изменения в текущие значения параметров. Использование команды set со значением 1 включает параметр, а со значением 0 отключает параметр. Все другие доступные параметры и команды рассматриваются в следующей таблице.

Параметры команды fsutil behavior

Параметр

Использование

disable8dot3

Отключает (1) или включает (0) создание имен в формате 8.3 на файловой системе FAT или NTFS

allowextchar

Включает (1) или отключает (0) использование символов из расширенного набора в коротких именах на томах с файловой системой NTFS

disablelastaccess

Отключает (1) или включает (0) использование метки времени последнего доступа для папок на файловой системе NTFS

quotanotify

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

<частота>

Используется совместно с параметром quotanotify для установки периода времени в секундах (допустимы значения из диапазона от 0 до 4294967295) по завершении которых события превышения квот дисковых пространств записываются в журнал системы. По умолчанию используется значение 3600 (один час)

memoryusage

Используется для изменения параметров внутреннего кэша для выгружаемого и невыгружаемого пула страниц для файловой системы NTFS. Изменение этих параметров позволяет увеличить производительность файловой системы (установите значение <размер памяти> равным 2)

<объем памяти>

Этот параметр может принимать два допустимых значения: 1 (значение, принятое по умолчанию) и 2. Если параметр установлен в значение 2, размер кэша файловой системы NTFS увеличивается, что позволяет увеличить производительность операций чтения файловой системы за счет дополнительного использования оперативной памяти

mftzone

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

<размер зоны>

Используется совместно с параметром mftzone для указания новых параметров MFT Zone. Допустимые значения находятся в диапазоне от 1 (значение, принятое по умолчанию) до 4. Увеличение значения на единицу представляет собой добавление одной восьмой дискового объема к выделенному пространству, поэтому по умолчанию 12.5% дискового пространства выделяется для хранения таблицы MFT. Изменение значения параметра <размер зоны> и установка его в значение 4 приведет к наибольшей производительности файловой системы, но это будет стоить 50% дискового пространства

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

Для просмотра результатов анализа, которые касаются таблицы MFT, необходимо указать параметр -v (подробные данные). Поэтому для использования утилиты defrag с целью проверки размера и фрагментации таблицы MFT на диске С необходимо воспользоваться следующей командой:

defrag -a -v c: 

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