Найти в Дзене
Т.Е.Х.Н.О Windows & Linux

⚙️ NTFS на максимуме: Настройка NtfsDisableLastAccessUpdate, 8dot3Name, MFT Zone и USN журнала для молниеносной работы

Возможность управлять внутренними параметрами файловой системы NTFS — это то, что отделяет обычных пользователей Windows от администраторов и профессионалов в области хранения данных. Неправильные настройки NTFS могут замедлить SSD в два раза, а правильная конфигурация способна вернуть потерянную производительность и продлить срок жизни накопителя. В этой статье разберём четыре критических параметра, которые большинство людей игнорирует и зря — они влияют на скорость не меньше, чем марка вашего SSD. Windows 11 версии 25H2 (сборка 26200.7462) по-прежнему использует те же базовые механизмы NTFS, что были в Windows 7, но с одной разницей: современные SSD и NVMe диски раскрывают все скрытые узкие места в file system. Если на механическом жёстком диске 2005 года лишнее обновление Last Access Time было незаметно на фоне задержек доступа к головке диска в 15 миллисекунд, то на быстром SSD каждый лишний I/O запрос накапливается в очередь контроллера и превращается в заметное торможение. Официа
Оглавление

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

Почему это важно именно сейчас?

Windows 11 версии 25H2 (сборка 26200.7462) по-прежнему использует те же базовые механизмы NTFS, что были в Windows 7, но с одной разницей: современные SSD и NVMe диски раскрывают все скрытые узкие места в file system. Если на механическом жёстком диске 2005 года лишнее обновление Last Access Time было незаметно на фоне задержек доступа к головке диска в 15 миллисекунд, то на быстром SSD каждый лишний I/O запрос накапливается в очередь контроллера и превращается в заметное торможение.

Официальная документация Microsoft (learn.microsoft.com, technet.microsoft.com) предполагает, что администраторы сами найдут эти параметры и настроят их. На форумах разработчиков (ElevenForum, Windows Central, MSFN) инженеры обсуждают эти настройки как "базовый уровень знаний", который должен быть у каждого, кто претендует на грамотное управление системой.

  • Поддержите канал T.E.X.H.O Windows & Linux — подпишитесь, ставьте лайки и делитесь этой статьёй с коллегами. Если Вам нравится что мы делаем, рассмотрите возможность поддержки через взносы на развитие канала. Спасибо за внимание к техническому контенту высокого качества!
-2

Механика NTFS изнутри: что нужно понять прежде всего

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

Last Access Time (LAT) — это метаданные, которые Windows теоретически должна обновлять при каждом чтении файла. На практике это означает, что при простом открытии документа для чтения система должна найти запись MFT, обновить timestamp в этой записи и записать изменение обратно на диск. На диске с 100 000 файлов, к которым обращаются в течение дня, это означает десятки тысяч лишних записей.

8.3 Short Filenames — это наследие эпохи DOS и системы FAT, где имена файлов были ограничены восемью символами плюс три символа расширения. NTFS продолжает создавать "короткие имена" для совместимости с приложениями 1995 года, которые вы никогда не запустите. При каждом создании файла NTFS должен сгенерировать уникальное восьмизначное имя, что требует поиска по существующим именам в папке. При 300 000 файлов в одной папке этот поиск может занять значительное время.

MFT Zone — это зарезервированная область диска (по умолчанию 12.5% от объёма), которую NTFS выделяет исключительно для собственного роста. Когда вы создаёте файлы, MFT растёт, и NTFS гарантирует, что новые записи MFT будут выделены из этой специально зарезервированной зоны, а не из фрагментированного свободного пространства. Это предотвращает фрагментацию MFT.

USN Journal ($UsnJrnl) — это постоянный лог всех изменений на томе. Каждый раз, когда файл создаётся, удаляется, переименовывается или модифицируется, NTFS записывает строку в этот журнал с точностью до миллисекунды. Приложения вроде Windows Backup и антивирусы используют этот журнал, чтобы быстро определить, какие файлы изменились с момента последней проверки, вместо сканирования всего диска.

Параметр 1: NtfsDisableLastAccessUpdate — Когда метаданные дороже, чем знание о времени доступа

-3

Где находится и как работает

Параметр расположен в реестре по пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsDisableLastAccessUpdate

Значение хранится как DWORD:

  • 0 (по умолчанию в Vista и старше, но часто переопределяется) = Last Access Time обновляется при каждом чтении файла;
  • 1 = Last Access Time НЕ обновляется при чтении (только при записи);
  • 3 = Same as 1, но установлено автоматически системой (используется в Windows 10/11 по умолчанию);
  • 0x80000001 или 0x80000003 = В Windows 10 April 1803+ сохраняется в этом формате для совместимости с более старыми утилитами.

Что происходит при включённом LAT (значение 0 или отсутствующее)

При каждом открытии, чтении или даже простом просмотре файла через File Explorer, Windows должна:

1️⃣ Найти запись файла в MFT;
2️⃣ Обновить поле "Last Accessed" в этой записи;
3️⃣ Отметить буфер MFT как "грязный";
4️⃣ Записать обновлённую запись обратно на диск (или в кеш для последующей записи).

На системе с 50 000 файлов (типичный объём для профиля Windows), при обращении к 100 файлам в день это означает 100 дополнительных операций записи в MFT, которые загромождают очередь I/O контроллера SSD.

Кроме того, эта операция имеет побочный эффект: она включает диск. На ноутбуке с SSD, который в противном случае мог бы перейти в режим низкого энергопотребления, каждое обновление LAT может пробудить контроллер памяти и добавить микросекунды задержки.

Что происходит при отключённом LAT (значение 1 или 3)

Quando вы отключите LAT (установите значение 1), при каждом чтении файла:

1️⃣ Windows НЕ обновляет Last Accessed timestamp в MFT;
2️⃣ Но! Timestamp хранится в памяти контроллера файловой системы;
3️⃣ Если вы запросите свойства файла и посмотрите на поле "Accessed", Windows вернёт корректное значение из памяти (не из диска);
4️⃣ При следующей операции записи в MFT (например, изменение содержимого файла) Last Access Time обновится естественным образом, без отдельной операции.

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

Практический эффект и рекомендации по диску

Для системного SSD (C:):

  • Отключите (установите значение 1) без колебаний ✅
  • Результат: Уменьшение нагрузки на диск при загрузке и доступе к системным DLL;
  • Во время загрузки Windows обращается к сотням библиотечных файлов, и каждая лишняя операция откладывает момент появления рабочего стола.

Для рабочего SSD (данные, проекты):

  • Отключите (значение 1) если нет специальных требований (например, для архивирования по времени доступа) ✅
  • Результат: Экономия операций при работе с документами;
  • Синхронизаторы вроде OneDrive, Synology, или собственные backup сценарии не полагаются на Last Access Time, они используют Last Modified Time или USN Journal.

Для HDD архива:

  • Обязательно отключите (значение 1) 🔴
  • Результат: Каждая сохранённая операция уменьшает износ механики;
  • На архивном диске, который редко используется, каждое пробуждение головки может быть последней каплей для отказа от вибрации и вибрации подшипников.

Как применить настройку

Через реестр (универсальный способ):

# Запустить PowerShell как администратор
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v NtfsDisableLastAccessUpdate /t REG_DWORD /d 1 /f

Через fsutil (современный способ для Windows 10/11):

fsutil behavior set disablelastaccess 1

Проверить текущее значение:

fsutil behavior query disablelastaccess

Необходима ли перезагрузка? Да, изменение вступает в силу после перезагрузки. Однако, для логического диска, отличного от системного, можно попробовать отключить и включить его из управления дисками, но гарантированно работает перезагрузка.

Спорный момент из сообщества

Microsoft Q&A (2021) содержит ответ от представителя Microsoft, который говорит: "Существенного повышения скорости работы заметно не будет". Однако сообщество на форумах разработчиков (ElevenForum, MSFN) единодушна в том, что на SSD эффект заметен именно в снижении задержек при работе с файловыми операциями, когда система предотвращает пик I/O. На HDD эффект менее заметен, потому что 5-10 дополнительных операций записи в MFT теряются на фоне поиска по диску (15-20ms задержка).

Параметр 2: NtfsMftZoneReservation — Резервирование места для роста MFT без фрагментации

-4

Механика резервирования и почему это работает

Когда вы форматируете новый раздел NTFS, система не знает, сколько файлов на нём появится. Может быть, это раздел для видеомонтажа с 10 крупными файлами, а может быть — сетевой диск с 10 миллионами мелких файлов. Чтобы подготовиться к обоим сценариям, NTFS использует следующую стратегию:

1️⃣ На монтирование раздела вычисляется размер MFT Zone (по умолчанию 12.5% от объёма диска);
2️⃣ NTFS резервирует эту область исключительно для своего собственного роста;
3️⃣ Когда приложения создают файлы и запрашивают место для $MFT, новые записи MFT выделяются ИЗ этой резервной зоны, а не из фрагментированного свободного пространства;
4️⃣ Это гарантирует, что MFT растёт контигуально (монолитно), без скачков по диску.

Критически важный момент: MFT Zone НЕ вычитается из доступного пользователям свободного места. Это чисто логический приоритет выделения. Если на диске осталось 10% свободного места, и 12.5% из них — MFT Zone, пользователь всё равно может писать на весь доступный объём. MFT Zone используется только в том случае, если $MFT нуждается в расширении.

Значения и их интерпретация

Параметр расположен по пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\NtfsMftZoneReservation

Допустимые значения (REG_DWORD):

  • 1 (по умолчанию) = 12.5% диска зарезервировано для MFT;
  • 2 = 25% диска;
  • 3 = 37.5% диска;
  • 4 = 50% диска (максимально).

Официальная рекомендация Microsoft Learn (2025):

"Если средний размер файла на томе составляет 2 килобайта или менее, может быть полезно установить значение mftzone на 2. Если средний размер файла на томе составляет 1 килобайт или менее, может быть полезно установить значение mftzone на 4."

Это логично: если на вашем диске 100 млн файлов по 512 байт каждый (например, кеш-файлы веб-браузера), MFT запись на каждый файл будет занимать большую часть 1024-байтной записи MFT, и таких записей потребуется огромное количество.

Сценарии применения

Системный SSD с Windows:

Профиль C:\Users\Username\AppData\Local содержит десятки тысяч мелких кеш-файлов (среднее размер 2-4KB). Папка C:\Windows\System32 содержит 2500+ DLL и исполняемых файлов. Рекомендуется:

  • NtfsMftZoneReservation = 1-2 (12.5%-25%).

Причина: Дополнительный запас на случай, если система установит новые обновления и сотни новых системных файлов.

Рабочий SSD с проектами:

Программист работает с git-репозиториями, где каждый коммит создаёт множество новых версий файлов с метаинформацией. Дизайнер работает с Figma проектами, которые содержат тысячи слоёв, сохранённых в отдельные файлы. Рекомендуется:

  • NtfsMftZoneReservation = 2-3 (25%-37.5%).

Причина: Частое создание и удаление файлов требует избытка места в MFT Zone для предотвращения фрагментации.

Высоконагруженный сервер с базой данных:

Если вы развёртываете SQL Server или PostgreSQL с миллионами небольших записей (1-100KB), каждая запись может соответствовать отдельному файлу журнала. Рекомендуется:

  • NtfsMftZoneReservation = 3-4 (37.5%-50%).

Причина: Защита от фрагментации MFT при интенсивных операциях создания/удаления.

HDD архив:

На архивном диске, который редко пополняется новыми файлами и в основном читается, фрагментация MFT маловероятна. Рекомендуется:

  • NtfsMftZoneReservation = 1 (12.5%, по умолчанию).

Причина: Экономия места для фактических данных; MFT Zone всё равно не будет использоваться.

Важное ограничение: применяется только к новым разделам

Это ключевой момент, который запутывает многих администраторов:

🚨 Изменение NtfsMftZoneReservation влияет ТОЛЬКО на разделы, которые вы форматируете ПОСЛЕ установки параметра.

Если у вас есть раздел D:, отформатированный с zone=1 (12.5%), и вы потом установите zone=3 (37.5%), это НЕ изменит zone на диске D:. Вам придётся:

1️⃣ Сделать резервную копию D:\ на другой диск;
2️⃣ Переформатировать D: с новым параметром в реестре;
3️⃣ Восстановить данные обратно.

Это сделано намеренно, потому что изменение zone размера на существующем разделе требует перемещения данных, что ненадёжно.

Как применить

В реестре:

# Перед форматированием нового диска
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v NtfsMftZoneReservation /t REG_DWORD /d 3 /f

# После этого форматируйте новый раздел NTFS
# Перезагрузка желательна, но можно обойтись (вступит в силу при следующем форматировании)

Через fsutil:

# Установить mftzone для будущих форматирований
fsutil behavior set mftzone 3

# Проверить текущее значение
fsutil behavior query mftzone

Через графический интерфейс (форматирование диска):

  1. Правый клик по диску в Управлении дисками → Форматировать;
  2. Укажите NTFS и размер блока (оставьте автоматический 4KB);
  3. Если вы установили registry параметр перед этим, новая зона будет применена автоматически.

Диагностика текущей MFT zone

Чтобы проверить, как MFT распределена на вашем текущем диске:

# Просмотр информации о MFT на диске D:
ntfsinfo D: | findstr "MFT zone"

# Или встроенным инструментом Disk Defragmenter
# Analyse Drive → View Report (показывает MFT info и фрагментацию)

Если видите, что MFT фрагментирована (более 2-3 фрагментов), это может быть признаком того, что zone была недостаточна для роста MFT.

Параметр 3: NtfsDisable8dot3NameCreation — Избавляемся от наследия DOS эпохи

История и почему это всё ещё есть

В 1985 году IBM представила PC-DOS, где имена файлов ограничивались форматом "8.3" (восемь символов имени, три символа расширения, например DOCUMENT.TXT). Это был железный закон в течение 20 лет. Когда Microsoft создавала NTFS в 1993 году, компания решила поддерживать длинные имена (до 255 символов), но сохранила "короткие имена" для обратной совместимости с приложениями, которые по-прежнему использовали DOS API для доступа к файлам.

В 2025 году почти нет приложений, которые полагаются на 8.3 имена... кроме нескольких:

  • 🦶 16-битные приложения (которые вообще не запустятся на 64-битной Windows);
  • 🔌 Некоторые легаси системы (SCADA, производственное оборудование 1990-х);
  • 📡 Samba-серверы и SMB общие папки (здесь может потребоваться 8.3 для совместимости с очень старыми клиентами);
  • 🗂️ Некоторые бэкап-утилиты, которые паниклют при обнаружении только длинных имён.

Для всех остальных — это просто пустая трата вычислительных ресурсов.

Что NTFS делает при включённых 8.3 именах

Когда вы создаёте файл с именем My Financial Report for Q4 2025.xlsx:

1️⃣ NTFS сохраняет полное имя в записи MFT (обычно в первых 1024 байтах);
2️⃣ NTFS вычисляет хеш имени и смотрит на все файлы в папке с похожим хешем;
3️⃣ Генерирует уникальное 8.3 имя, например MYFI~1.XLS (первые 6 символов + счётчик + расширение);
4️⃣ Создаёт вторую запись в индексе папки (directory B-tree) с коротким именем;
5️⃣ Сохраняет в MFT ссылку между длинным и коротким именами.

Это означает, что каждый файл требует:

  • На 20-30% больше памяти в MFT (записи короче, чем длинные имена, но отдельная структура);
  • На 30-50% больше времени поиска при переборе папки (потому что индекс папки содержит дважды больше записей);
  • При переименовании или удалении файла нужно обновлять обе записи.

Пороги производительности и реальные бенчмарки

Исследования инженеров Microsoft (статьи на TechNet и StackOverflow) выявили критические пороги:

  • До 100 файлов в папке: разницы практически нет (< 1% задержки);
  • 100-10 000 файлов: начинает появляться заметное замедление при поиске (5-10%);
  • 10 000-100 000 файлов: замедление становится значительным (15-25%);
  • Свыше 300 000 файлов в одной папке: производительность деградирует критически, поиск может занять секунды.

Когда включена генерация 8.3 имён:

СценарийБез 8dot3С 8dot3Прирост25 000 файлов, создание126 028 ops/sec102 617 ops/sec19% медленнее5 процессов, 25 000 файлов567 611 ops/sec375 946 ops/sec34% медленнее20 процессов, 25 000 файлов2 420 367 ops/sec1 422 348 ops/sec41% медленнее

(Источник: Deep Data Blog, Microsoft TechNet, испытания на Windows 8 и Windows Server 2008 R2)

Эти результаты показывают, что при параллельном создании файлов (что часто происходит при компилировании кода, распаковке архивов, или работе с базами данных), отключение 8.3 даёт 30-40% прирост производительности.

Проверка статуса и отключение

Проверить текущее состояние:

# Глобальное состояние
fsutil 8dot3name query

# На конкретном диске
fsutil 8dot3name query D:

Возможные ответы:

  • Disable 8dot3 name creation on all volumes = Отключено везде (значение 1);
  • Enable 8dot3 name creation on all volumes = Включено везде (значение 0);
  • Per volume policy = Настраивается отдельно для каждого тома (значение 2).

Отключить 8.3 глобально:

# Для всех текущих и будущих разделов
fsutil behavior set disable8dot3 1

# Или через реестр
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem" /v NtfsDisable8dot3NameCreation /t REG_DWORD /d 1 /f

Отключить на конкретном диске (если включена политика per-volume):

powershellfsutil 8dot3name set D: 1

Очистить существующие 8.3 имена (уже созданные файлы):

# Сканировать, сколько файлов с 8.3 именами существует
fsutil 8dot3name scan /s D:\

# Удалить существующие короткие имена (требует перезагрузки в Safe Mode)
fsutil 8dot3name strip /s /f D:\

Необходима ли перезагрузка? Для отключения генерации новых 8.3 имён — нет, вступает в силу немедленно. Для удаления существующих коротких имён — нужна перезагрузка в Safe Mode и запуск дефрагментатора.

Канал «Каморка Программиста» — это простые разборы программирования, языков, фреймворков и веб-дизайна. Всё для новичков и профессионалов.
-5
Каморка Программиста | Дзен
Присоединяйся прямо сейчас.

Рекомендации по диску

Системный SSD:

  • 🟢 Отключите (значение 1), но осторожно проверьте, нет ли установленного легаси ПО;
  • При стандартной установке Windows 11 никаких 16-битных приложений не используется.

Рабочий SSD:

  • 🟢 Отключите (значение 1) без колебаний, если нет специфических требований;
  • Современные приложения (Visual Studio, IntelliJ IDEA, Docker, Git) не используют 8.3 имена.

Сетевой диск (NAS с SMB):

  • 🟡 Оставьте включённым (значение 0) или выставьте per-volume (значение 2), если клиентами являются очень старые устройства (принтеры 2005+, сканеры, специализированное оборудование);
  • Включение 8.3 имён на сетевом диске имеет двойной штраф: локальный (на сервере) и сетевой (передача коротких имён по SMB).

HDD архив:

  • 🟢 Отключите (значение 1);
  • Архив редко читается, так что совместимость не требуется.

Опасность отключения: примеры проблем

Некоторые пользователи сообщали о проблемах после отключения 8.3:

  • ❌ Некоторые старые инсталляторы перестают работать (требуют поиска файлов через 8.3 API);
  • ❌ Распакованные архивы из ZIP могут быть недоступны (некоторые архиваторы полагались на 8.3 для создания временных файлов);
  • ❌ Синхронизаторы файлов (например, Dropbox с очень старой версией) могли запутаться в именах.

Однако эти случаи редки. Рекомендация:

  1. Отключите 8.3 на диске D:\ (рабочий раздел), оставив C:\ с 8.3 включённым, если хотите перестраховаться;
  2. Работайте неделю-две и проверьте, появились ли проблемы;
  3. Если всё нормально, отключите и на C:.

Параметр 4: USN Journal — Мониторинг изменений файлов для backup и синхронизации

Что такое USN Journal и зачем он нужен

USN расшифровывается как Update Sequence Number. Это 64-битное число, которое NTFS инкрементирует при каждом изменении файловой системы. USN Journal — это специальный скрытый файл ($Extend\$UsnJrnl), в котором хранятся записи о всех таких изменениях с временными метками и причинами.

Представьте, что у вас есть 2 терабайта данных и вам нужно создать резервную копию. Если бы вы вынуждены были сканировать каждый из миллионов файлов, чтобы выяснить, какие изменились со времени последней резервной копии, это заняло бы часы. Вместо этого приложение резервного копирования просто читает USN Journal, находит все записи, созданные за последний день, и копирует только эти файлы. Это занимает минуты вместо часов.

То же самое делают:

  • 📦 Windows Backup и System Image создание;
  • 🔍 Windows Search индексация (для обновления индекса);
  • 🛡️ Antivirus и EDR системы (для мониторинга новых файлов);
  • ☁️ OneDrive, Synology, Nextcloud синхронизаторы;
  • 📝 File Replication Service (FRS) в корпоративных доменах;
  • 🔄 Другие backup/sync приложения (Veeam, Backblaze, Carbonite).

Структура и размер журнала

USN Journal реализован как sparse file (разреженный файл). Это означает, что операционная система выделяет место для него логически, но физически он занимает намного меньше места на диске.

По умолчанию:

  • Максимальный размер: 32 MB для локальных разделов, может быть настроен;
  • Размер записи: ~50-100 байт на одно изменение (зависит от длины имени файла);
  • История: При активном использовании (тысячи файлов в день) журнал может хранить 7-14 дней истории, при пассивном — несколько недель;
  • Формат: Каждая запись содержит USN номер, имя файла, MFT номер, время, тип изменения (создание, удаление, переименование, изменение атрибутов).

Когда USN Journal полезен и когда его лучше отключить

Оставить включённым на системном SSD:

✅ Windows Backup, System Image Recovery, File History все зависят от USN Journal;
✅ Windows Search использует journal для обновления индекса без полного переканализирования диска.

Оставить включённым на рабочем SSD:

✅ Если вы используете OneDrive, Synology Cloud Sync, или другие синхронизаторы — они используют journal;
✅ Если вы используете antivirus с real-time protection — он использует journal для отслеживания новых файлов;
✅ Экономия места не является приоритетом (всего 30-40 MB для sparse file).

Отключить на HDD архива:

❌ На архивном диске, в который данные пишутся очень редко, journal просто занимает место;
❌ Если в архиве пассивные данные и никаких backup/sync приложений, journal бесполезен;
❌ При дефрагментации архива отключение journal может слегка улучшить производительность;
❌ На диске, заполненном на 95%+, экономия даже 30MB может быть полезна.

Проверка и управление USN Journal

Проверить статус и размер:

# Информация о journal на диске D:
fsutil usn queryjournal D:

# Вывод выглядит примерно так:
# USN Journal ID: 0x1234567890abcdef
# First USN: 0x1000
# Next USN: 0x5f4a8c
# Lowest Valid USN: 0x2000
# Max Size: 0x2000000 (32 MB)
# Allocation Delta: 0x100000 (1 MB)

Удалить USN Journal (отключить):

# Удалить журнал с диска D:
fsutil usn deletejournal /d /n D:

# Параметры:
# /d = Delete journal
# /n = Don't return until deletion is complete

Пересоздать journal (если он повреждён):

# Создать новый journal с максимальным размером 32MB и дельтой 512KB
fsutil usn createjournal m=33554432 a=524288 D:

# Или значения по умолчанию
fsutil usn createjournal m=0 a=0 D:

Читать записи из USN Journal (для диагностики):

# Получить записи, начиная с указанного USN номера
fsutil usn readjournal D: /startusn:0 /reasonmask:0xFFFFFFFF

# Это выведет недавние изменения файлов на диске

Рекомендации по диску

Системный SSD (C:):

  • 🟢 Оставить включённым (по умолчанию);
  • Отключение сломает System Image Recovery и замедлит Windows Search.

Рабочий SSD (D:):

  • 🟢 Оставить включённым (по умолчанию);
  • Почти все современные приложения используют journal для дельта-синхронизации.

HDD архив (G:):

  • 🟡 Если никаких backup/sync приложений не работают с этим диском → отключить;
  • 🟡 Если хоть одно backup приложение читает этот диск → оставить включённым;
  • 🟢 Если диск очень часто переполняется → удалить journal и сэкономить место.

Практическое применение: Пошаговая инструкция по оптимизации разных дисков

-6

Сценарий 1: Оптимизация системного SSD (C:)

Цель: Ускорить загрузку и отзывчивость Windows, снизить нагрузку на диск.

Шаг 1: Запустить PowerShell как администратор

# Нажать Win+X → Windows PowerShell (Admin)
# Или нажать Win, найти PowerShell, правый клик → Run as administrator

Шаг 2: Отключить Last Access Time

powershellfsutil behavior set disablelastaccess 1

Шаг 3: Отключить 8.3 генерацию (если нет легаси приложений)

# Сначала проверить
fsutil 8dot3name query

# Отключить
fsutil behavior set disable8dot3 1

Шаг 4: Установить MFT Zone для будущих операций

# Текущие диски не изменятся, но при переформатировании будет использовано
fsutil behavior set mftzone 2

Шаг 5: Проверить (но не удалять!) USN Journal

fsutil usn queryjournal C:

# Оставить включённым, это нужно для Windows Backup

Шаг 6: Перезагрузиться

# Запустить перезагрузку
shutdown /r /t 60

# Или вручную через меню Start → Power → Restart

Шаг 7: Проверить результаты после перезагрузки

# Всё ли применилось
fsutil behavior query disablelastaccess
# Должно быть 1
fsutil behavior query disable8dot3
# Должно быть 1
fsutil behavior query mftzone
# Должно быть 2

Сценарий 2: Оптимизация рабочего SSD (D:\Projects)

Цель: Ускорить работу с проектами и файлами, улучшить скорость создания/удаления.

Шаги 1-5: Те же самые, что и для системного SSD.

Шаг 6: Дополнительно — если много создания/удаления файлов

# Если вы работаете с git, Docker, компилированием кода
# Увеличить MFT Zone
fsutil behavior set mftzone 3

Шаг 7: Переформатировать диск (если хотите, чтобы MFT zone вступила в силу)

# ⚠️ ОСТОРОЖНО: Потеря данных!
# 1. Сделать резервную копию всех данных на D:\
# 2. Правый клик → Формат → NTFS (теперь используется новый mftzone=3)
# 3. Восстановить данные обратно

Шаг 8: Проверить USN Journal

fsutil usn queryjournal D:

# Оставить включённым для OneDrive/Backup приложений

Сценарий 3: Оптимизация HDD архива (G:\Archive)

Цель: Экономия места, продление срока жизни механики, минимизация нагрузки.

Шаг 1: Отключить Last Access Time (экономия операций)

fsutil behavior set disablelastaccess 1

Шаг 2: Отключить 8.3 (если нет SMB доступа с очень старых устройств)

# Проверить: кто может подключаться к этому диску по сети?
# Если только современные компьютеры (Windows 10/11, Linux, macOS)
fsutil behavior set disable8dot3 1

Шаг 3: Отключить USN Journal (экономия места на архиве)

# Удалить journal
fsutil usn deletejournal /d /n G:

# Проверить, удалось ли
fsutil usn queryjournal G:
# Должна быть ошибка или сообщение, что журнала нет

Шаг 4: Дефрагментация диска (опционально, может занять часы)

# Встроенный дефрагментатор
defrag G: /U /V

# Или сторонний инструмент (например, Defraggler)

Шаг 5: Перезагрузиться

shutdown /r /t 60

Диагностика и отладка: Что делать, если что-то сломалось

Ошибка: "Cannot delete journal" при попытке отключить USN Journal

Причина: Какой-то процесс использует journal (например, Backup приложение).

Решение:

# 1. Закрыть все backup/sync приложения
# 2. Остановить Windows Search индексацию
net stop "Windows Search"

# 3. Повторить удаление journal
fsutil usn deletejournal /d /n G:

# 4. Перезапустить Windows Search
net start "Windows Search"

Ошибка: "System cannot find specified path" при работе с fsutil

Причина: Команда fsutil требует абсолютного пути с двоеточием (буква диска).

Решение:

# ✅ Правильно
fsutil behavior set disablelastaccess 1
fsutil usn queryjournal D:

# ❌ Неправильно
fsutil usn queryjournal D:\
fsutil usn queryjournal Users\Documents

Проверка: "Является ли мой диск NTFS?"

# Узнать файловую систему
Get-Volume | Select DriveLetter, FileSystem

# Вывод:
# DriveLetter FileSystem
# ----------- ----------
# C NTFS
# D NTFS
# G NTFS

Если диск exFAT, FAT32 или Resilient File System (ReFS), большинство этих параметров не применяются.

Откат изменений: Вернуть все в исходное состояние

Если что-то пошло не так, вы можете откатить все изменения:

# Включить Last Access Time (значение по умолчанию)
fsutil behavior set disablelastaccess 0

# Включить 8.3 генерацию
fsutil behavior set disable8dot3 0

# Вернуть MFT Zone в default (значение 1)
fsutil behavior set mftzone 1

# Пересоздать USN Journal (если удалили)
fsutil usn createjournal m=0 a=0 D:

# Перезагрузиться
shutdown /r /t 60

Секреты и лайфхаки опытных администраторов

🔧 Лайфхак 1: Быстрая проверка фрагментации MFT

Если вы подозреваете, что MFT фрагментирована, откройте встроенный дефрагментатор:

# Запустить Defrag and Optimize Drives GUI
defrag C: /U /V

Откройте отчёт (View Report) и посмотрите на раздел "System files" (зелёный сегмент). Если $MFT показана как фрагментированная в 10+ фрагментов, это признак недостаточной MFT Zone.

🔧 Лайфхак 2: Создать образ идеально оптимизированного диска

Если вы развёртываете множество машин, оптимизируйте одну, создайте образ, а потом клонируйте:

# На "золотом образце"
fsutil behavior set disablelastaccess 1
fsutil behavior set disable8dot3 1
fsutil behavior set mftzone 2

# Создать образ с помощью Macrium Reflect, Veeam, или Windows Deployment Services
# Развернуть образ на других машинах

🔧 Лайфхак 3: Мониторинг USN Journal для обнаружения вредоноса

Некоторые администраторы сценариев используют USN Journal для отслеживания изменений файлов в системном диске в реальном времени. Это помогает обнаружить компрометацию раньше:

# Установить нулевой USN для начального отсчёта
fsutil usn createjournal m=0 a=0 C:

# Затем периодически читать журнал и анализировать
fsutil usn readjournal C: /startusn:0 /reasonmask:0xFFFFFFFF | `
Where-Object { $_ -match "FilePath.*System32.*\.dll" } | `
Out-File C:\logs\dll_changes.txt

🔧 Лайфхак 4: Отключить Last Access Time только для конкретной папки

Если вы хотите отключить LAT глобально, но на одной папке нужны accurate timestamps (например, для архивирования):

# Это невозможно сделать стандартными средствами
# Но вы можете использовать Group Policy на корпоративной машине:
# GPEdit → Computer Config → Admin Templates → System → File System → NTFS
# Установить "Disable Last Access Time Update" → Enabled
# Потом на одной папке вручную включить архивный бит и не обновлять его

🔧 Лайфхак 5: Смешанная стратегия для нескольких типов данных на одном диске

Если у вас на одном диске находятся системные файлы, проекты и архивы:

# 1. На уровне диска отключить 8.3 и Last Access Time
fsutil behavior set disablelastaccess 1
fsutil behavior set disable8dot3 1

# 2. Но в папке E:\Archive отключить compression (по умолчанию отключена)
# и периодически очищать старые файлы

# 3. В папке E:\Projects включить автоматическую дефрагментацию
# через Disk Defragmenter → Change settings → Schedule

Типичные ошибки и неправильные предположения

❌ Ошибка 1: "MFT Zone вычитается из свободного места"

Неправда! MFT Zone НЕ влияет на свободное место, доступное пользователю. Это просто приоритет выделения. Если установлена MFT Zone 50%, это не означает, что 50% диска заблокирована для пользователей.

❌ Ошибка 2: "Отключение Last Access Time сломает Backup приложения"

Неправда! Backup приложения используют Last Modified Time, а не Last Access Time. Last Modified Time всё равно обновляется при каждом сохранении файла. Last Access Time — это просто информация "когда файл был открыт для чтения", и для backup это не критично.

❌ Ошибка 3: "Отключение 8.3 сделает невозможным найти файлы"

Неправда! Будут найдены все файлы, просто по полным длинным именам. Короткие имена нужны только для очень старых приложений (DOS era).

❌ Ошибка 4: "Я отключил USN Journal и сэкономил 100GB"

Неправда! USN Journal занимает всего 30-40MB, даже если вы работаете с миллионами файлов. Это sparse file, физически занимающий намного меньше места.

❌ Ошибка 5: "MFT Zone можно изменить на существующем диске"

Неправда! Параметр влияет только на вновь форматированные диски. Чтобы изменить zone на существующем диске, нужно переформатировать с потерей данных.

Проверка параметров перед и после оптимизации

Создайте скрипт для быстрой диагностики:

# Сохранить как diagnose-ntfs.ps1

function Get-NTFSStatus {
param(
[string]$DriveLetter = "C"
)

Write-Host "=== NTFS Diagnostics for $DriveLetter : ===" -ForegroundColor Green

Write-Host "`nLast Access Time:" -ForegroundColor Cyan
$lac = fsutil behavior query disablelastaccess
Write-Host $lac

Write-Host "`n8.3 Short Names:" -ForegroundColor Cyan
$dot8 = fsutil behavior query disable8dot3
Write-Host $dot8

Write-Host "`nMFT Zone:" -ForegroundColor Cyan
$mft = fsutil behavior query mftzone
Write-Host $mft

Write-Host "`nUSN Journal Status:" -ForegroundColor Cyan
try {
$usn = fsutil usn queryjournal "$DriveLetter`:"
Write-Host $usn
}
catch {
Write-Host "No USN Journal"
}

Write-Host "`nFile System Type:" -ForegroundColor Cyan
$fs = Get-Volume -DriveLetter $DriveLetter | Select-Object -ExpandProperty FileSystem
Write-Host $fs
}

# Запуск
Get-NTFSStatus -DriveLetter C
Get-NTFSStatus -DriveLetter D

Запустить скрипт:

.\diagnose-ntfs.ps1

Часто задаваемые вопросы (FAQ)

Вопрос: Я переформатирую диск. В каком порядке действовать?

Ответ: 1) Установить параметры в реестр (mftzone, disable8dot3, disablelastaccess); 2) Перезагрузиться; 3) Правый клик на диск → Формат → NTFS (новые параметры вступят в силу); 4) Восстановить данные.

Вопрос: Нужна ли перезагрузка для каждого параметра?

Ответ: Для disable8dot3 — нет, вступает немедленно. Для disablelastaccess и mftzone — да, требуется перезагрузка. Для USN Journal — нет, удаление/создание работает немедленно.

Вопрос: Может ли отключение Last Access Time сломать мой компьютер?

Ответ: Нет, это абсолютно безопасно. Windows и все приложения были переведены на игнорирование Last Access Time ещё в Vista (2006).

Вопрос: Какой параметр даст самый большой прирост производительности?

Ответ: На системном SSD — отключение Last Access Time (снижение I/O при загрузке). На диске с большим количеством файлов — отключение 8.3 (34-41% прирост при создании/переименовании). На работающем SSD — увеличение MFT Zone (предотвращение фрагментации).

Вопрос: Я отключил все параметры на всех дисках. Есть ли риск?

Ответ: Низкий риск, если на диск не подключаются по сети старые устройства (принтеры 2000-х годов, сканеры, промышленное оборудование). Для Интернета рекомендуется оставить 8.3 включённым на дисках, к которым есть SMB доступ.

Вопрос: Как я узнаю, что параметры применились?

Ответ: После перезагрузки выполнить команды проверки (fsutil behavior query) и убедиться, что значения совпадают с установленными. Также можно открыть реестр (regedit) и проверить параметры вручную.

Вопрос: Есть ли утилита с графическим интерфейсом для этих настроек?

Ответ: Встроенной нет. Есть сторонние инструменты (WiseCare 365, Piriform Defraggler, Auslogics Disk Defrag), но они часто устаревают и содержат рекламу. PowerShell команды (fsutil) — самый надёжный способ.

Рекомендации по системам разработчиков, геймеров и администраторов

Для разработчика (компилирование, Git, Docker)

# Отключить Last Access Time (сотни обращений к файлам при компилировании)
fsutil behavior set disablelastaccess 1

# Отключить 8.3 (Git создаёт тысячи файлов с похожими именами)
fsutil behavior set disable8dot3 1

# Увеличить MFT Zone (Docker контейнеры создают волны файлов)
fsutil behavior set mftzone 3

# Оставить USN Journal для backup приложений

🎮 Для геймера (большие файлы, быстрые обновления)

# Отключить Last Access Time (игры часто читают ресурсы)
fsutil behavior set disablelastaccess 1

# Отключить 8.3 (не нужно для игр)
fsutil behavior set disable8dot3 1

# MFT Zone по умолчанию (1) или 2, так как размеры файлов большие (50MB-500MB)
# много маленьких файлов не создаётся

# Периодически дефрагментировать рабочий диск с играми
defrag D: /U

👨‍💼 Для системного администратора (корпоративная сеть)

# Для всех машин в домене: Group Policy
# Computer Config → Admin Templates → System → File System → NTFS

# Отключить Last Access Time на всех машинах
# Отключить 8.3 НА ВСЕХ КРОМЕ сетевых дисков (value 3)
# Увеличить MFT Zone на файловых серверах
# Оставить USN Journal для System Center Configuration Manager (SCCM) и backup

# Развернуть "золотой образ" с этими настройками на все новые машины

Чек-лист применения оптимизаций

Перед началом:

  • Сделать резервную копию важных данных
  • Создать точку восстановления системы
  • Закрыть все приложения, работающие с диском (Backup, Sync, Antivirus)

Применение параметров:

Применение параметров:

  • Запустить PowerShell как администратор
  • Отключить Last Access Time: fsutil behavior set disablelastaccess 1
  • Отключить 8.3 (если нет legacy приложений): fsutil behavior set disable8dot3 1
  • Установить MFT Zone для будущих дисков: fsutil behavior set mftzone 2 (или 3/4)
  • Проверить USN Journal: fsutil usn queryjournal C:
  • Перезагрузиться: shutdown /r /t 60

После перезагрузки:

  • Проверить, что параметры применились: fsutil behavior query disablelastaccess
  • Проверить, что система загружается нормально
  • Проверить, что все приложения работают
  • Если есть проблемы → выполнить откат (см. раздел Диагностика)

Долгосрочный мониторинг:

  • Периодически проверять фрагментацию MFT (раз в месяц)
  • При обнаружении фрагментации > 5% → переформатировать или увеличить MFT Zone
  • Мониторить использование диска (если заполнение > 95% → отключить journal на архивах)

Вывод: Что вы узнали и как это применить

Вы теперь понимаете, что NTFS — это не "чёрный ящик", а высокоуправляемая система хранения, чьё поведение можно точно настроить под вашу конкретную задачу.

NtfsDisableLastAccessUpdate — это отключение ненужной метаинформации, которая никогда не используется современными приложениями, но занимает ценное время I/O.

NtfsMftZoneReservation — это контроль фрагментации Master File Table путём выделения достаточного места для её роста без скачков по диску.

NtfsDisable8dot3NameCreation — это избавление от наследия 1980-х годов, которое замедляет операции с файлами в папках с огромным количеством файлов.

USN Journal — это логирование всех изменений, которое ускоряет backup и sync приложения, находя только изменённые файлы вместо сканирования всего диска.

Правильная комбинация этих параметров может улучшить производительность системного SSD на 10-20%, обеспечить стабильность рабочего диска при интенсивных нагрузках и продлить срок жизни архивного накопителя за счёт снижения нагрузки.

Начните с системного диска, примените базовые оптимизации (Last Access Time + 8.3), запустите несколько повседневных задач и убедитесь, что всё работает нормально. Затем постепенно переходите к более агрессивным настройкам (увеличение MFT Zone) по мере необходимости.

🚀 Успехов в оптимизации вашей системы!

-7

#NTFS #Windows11 #SSD #производительность #оптимизация #системное_администрирование #DevOps #хранение_данных #файловая_система #быстродействие #фрагментация #MFT #USN #8dot3 #PowerShell #администраторы #профессионалы #нижний_уровень #I/O #контроллер #реестр #fsutil #производительность_диска #архив #резервная_копия #синхронизация