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

🔧Оптимизация NTFS: размер кластера, управление MFT и отключение Last Access Time для максимальной производительности

Ты, наверное, замечал, что после нескольких месяцев активной работы с Windows производительность файловой системы начинает падать. Особенно это заметно на дисках с большим количеством мелких файлов или при интенсивной работе с базами данных. Сегодня разберёмся в трёх ключевых механизмах оптимизации NTFS, которые реально влияют на скорость работы системы: выбор правильного размера кластера при форматировании, резервирование пространства для Master File Table (MFT) и управление обновлением времени последнего доступа к файлам. В этой статье я дам тебе практические команды и конфиги, которые применяю сам на продакшн-серверах и рабочих станциях. Разберём механику работы NTFS на низком уровне, покажу типичные ошибки и расскажу, как откатить изменения, если что-то пойдёт не так. Все рекомендации актуальны для Windows 11 24H2/25H2 и Windows Server 2022/2025, протестированы в реальных условиях. Актуальное состояние NTFS в 2025 году NTFS остаётся дефолтной и наиболее производительной файловой с
Оглавление

Ты, наверное, замечал, что после нескольких месяцев активной работы с Windows производительность файловой системы начинает падать. Особенно это заметно на дисках с большим количеством мелких файлов или при интенсивной работе с базами данных. Сегодня разберёмся в трёх ключевых механизмах оптимизации NTFS, которые реально влияют на скорость работы системы: выбор правильного размера кластера при форматировании, резервирование пространства для Master File Table (MFT) и управление обновлением времени последнего доступа к файлам.

В этой статье я дам тебе практические команды и конфиги, которые применяю сам на продакшн-серверах и рабочих станциях. Разберём механику работы NTFS на низком уровне, покажу типичные ошибки и расскажу, как откатить изменения, если что-то пойдёт не так. Все рекомендации актуальны для Windows 11 24H2/25H2 и Windows Server 2022/2025, протестированы в реальных условиях.

Актуальное состояние NTFS в 2025 году

NTFS остаётся дефолтной и наиболее производительной файловой системой для Windows в 2025 году. Хотя Microsoft активно развивает ReFS (Resilient File System) для серверных сценариев, тесты показывают, что NTFS превосходит ReFS на 5-20% в типичных десктопных и серверных нагрузках. ReFS оптимизирована под Storage Spaces Direct и крупные массивы, но для обычных дисков NTFS быстрее.​

Что изменилось в последних версиях Windows:

  • В Windows 11 25H2 улучшена работа с USN Journal, что устранило проблему падения производительности на NVMe SSD при записи мелких файлов​
  • Windows Server 2025 добавил нативную дедупликацию в ReFS, но NTFS по-прежнему остаётся основной для большинства задач​
  • Начиная с Windows 10 1803, Microsoft изменила поведение обновления Last Access Time: теперь по умолчанию используется режим "System Managed", при котором для томов >128 ГБ обновления отключаются автоматически​

Размер кластера NTFS: как он влияет на производительность

Кластер (allocation unit) — это минимальная единица дискового пространства, которую NTFS может выделить для файла. Даже файл размером 1 байт займёт целый кластер. При дефолтном форматировании Windows использует следующие размеры:​

-2

Но это не всегда оптимально. Windows позволяет вручную задать кластер от 512 байт до 64 КБ (а с помощью diskpart — до 2 МБ).​

Механика работы и влияние на I/O

Основная идея: чем больше кластер, тем меньше операций ввода-вывода требуется для чтения/записи больших файлов. Но при этом растут потери пространства (internal fragmentation) — в последнем кластере файла в среднем теряется половина его размера.​

Эксперименты показывают:​

  • Кластеры <4 КБ существенно (на 50-60%) снижают производительность копирования даже средних файлов
  • Переход с 4 КБ на 16 КБ или 32 КБ даёт прирост 10-15% для файлов >2 МБ
  • Для кластеров 64 КБ прирост особенно заметен на random read операциях: до 20-30% по сравнению с 4 КБ​
  • Для SSD разница в производительности между 4 КБ и 64 КБ может достигать 2x на последовательных операциях​

Важно: NTFS-сжатие работает только с кластером 4 КБ. Если тебе нужна компрессия, выбора нет.​

Когда использовать большие кластеры

  • SQL Server: Microsoft официально рекомендует 64 КБ для дисков с файлами баз данных, так как page size в SQL Server — 8 КБ, и extent (8 страниц) = 64 КБ​
  • Hyper-V: 64 КБ для дисков с VHDX-файлами — стандартная практика​
  • Видео/медиа: файлы размером >100 МБ выигрывают от кластера 32-64 КБ​
  • Большие файлы (>10 МБ средний размер): 16-32 КБ оптимальны​

Когда оставлять 4 КБ

  • Системные диски (C:) — нужна поддержка compression и малый overhead для мелких системных файлов​
  • Диски с большим количеством мелких файлов (<100 КБ)​
  • Если не уверен — оставляй 4 КБ, это универсальный вариант​

Практика: форматирование с нужным кластером

Через GUI:
При форматировании в проводнике выбери "Allocation unit size" из выпадающего списка (512, 1024, 2048, 4096, 8192, 16K, 32K, 64K).

Через командную строку:

format D: /FS:NTFS /A:64K /Q

/A: — размер кластера (можно указать 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K)
/Q — быстрое форматирование
/V:label — метка тома (опционально)

Проверка текущего размера кластера:

fsutil fsinfo ntfsinfo C:

Ищи строку "Bytes Per Cluster".​

Или короче:

Get-WmiObject -Class Win32_Volume | Select-Object Label, BlockSize | Format-Table -AutoSize

⚠️ Риски:

  • Форматирование уничтожает все данные — делай бэкап
  • После форматирования размер кластера изменить нельзя, только переформатировать заново
  • Некоторые старые программы могут некорректно работать с кластерами >4 КБ (редко, но встречается)​
🔖Дорогие гости и подписчики канала. Если наши материалы приносят вам пользу, вы всегда можете поддержать команду символическим переводом. Любая помощь мотивирует писать для Вас больше полезного и качественного контента безо всяких подписок.🙏🤝🙏🤝🙏
-3
💰ПОДДЕРЖАТЬ КАНАЛ МОЖНО ТУТ ( ОТ 50 РУБЛЕЙ )💰
Или сделать любой перевод по QR-коду через СБП. Быстро, безопасно и без комиссии.(Александр Г.)
С уважением, Команда "Т.Е.Х.Н.О Windows & Linux".

Master File Table (MFT): резервирование и фрагментация

MFT — это "сердце" NTFS, база данных, которая содержит информацию о каждом файле и директории на томе. Для каждого файла в MFT создаётся запись (стандартный размер — 1 КБ). Мелкие файлы (<~700 байт) могут храниться целиком внутри MFT (resident data), что ускоряет доступ.​

Как работает MFT Zone

По умолчанию NTFS резервирует 12,5% пространства тома для MFT Zone — это область, куда MFT может расти без фрагментации. Важно: это резервирование не уменьшает доступное пространство для файлов — пользовательские данные записываются за пределами MFT Zone, но если том заполнен, система начнёт писать файлы и в эту зону, конкурируя с MFT.​

Проблема: если MFT Zone заполнена или если диск почти полон, новые записи MFT создаются фрагментированно. Фрагментированная MFT означает, что при обращении к файлам головки диска (на HDD) вынуждены прыгать по разным участкам диска, что резко снижает производительность.​

Симптомы фрагментированной MFT

  • Замедление операций с файлами (open, read, list directory)
  • Долгое время поиска файлов
  • Высокий disk usage при малой реальной нагрузке

Проверка фрагментации MFT

Используй Contig.exe из Sysinternals:​

contig -a C:\$MFT

Вывод покажет количество фрагментов. Если фрагментов >10-20, это уже заметно.​

Или через PowerShell (показывает размер MFT):

Get-ItemProperty 'C:\$MFT' | Select-Object Length

Изменение размера MFT Zone

Начиная с Windows NT 4.0 SP4, можно увеличить процент резервирования через реестр:​

Путь:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Параметр:
NtfsMftZoneReservation (REG_DWORD)

Значения:

  • 1 = 12,5% (по умолчанию)
  • 2 = 25%
  • 3 = 37,5%
  • 4 = 50%​

Как создать/изменить:

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "NtfsMftZoneReservation" `
-Value 2 `
-PropertyType DWORD `
-Force

Или через regedit вручную: создай DWORD-значение с именем NtfsMftZoneReservation и установи значение 1-4.

После изменения перезагрузи систему. Изменение вступает в силу только для новых томов или при следующем монтировании существующих.​

Когда увеличивать MFT Zone

  • У тебя на томе >1 млн файлов​
  • Средний размер файлов <100 КБ (много мелких файлов)​
  • Файловый сервер с интенсивным созданием/удалением файлов​
  • MFT занимает >10% от размера тома (проверь dir /a $MFT)​

Правило большого пальца: процент MFT ≈ (количество файлов × 4 КБ) / размер тома. Например, для 2 млн файлов на томе 500 ГБ: (2 000 000 × 4096) / (500 × 1024³) ≈ 1,5%. В этом случае дефолтные 12,5% достаточны. Но если файлов 5 млн, уже нужно ~3,8%, и резервирование 25% (значение 2) будет полезно.​

Дефрагментация MFT

Стандартный дефрагментатор Windows НЕ дефрагментирует MFT в Windows 7 и старше. Начиная с Windows 8, команда defrag C: /O дефрагментирует MFT.​

Для Windows 10/11:

defrag C: /O /H /U

  • /O — оптимизация (включая MFT)
  • /H — нормальный приоритет
  • /U — выводить прогресс

⚠️ Это долгий процесс (часы для больших дисков), делай на ночь. Для SSD дефрагментация MFT бессмысленна — SSD нет разницы, где физически данные.​

Для глубокой дефрагментации MFT на старых системах нужны сторонние утилиты типа Diskeeper или PerfectDisk. Но проще — бэкап + переформатирование + восстановление.​

Отключение обновления Last Access Time: снижение нагрузки на диск

По умолчанию NTFS обновляет временну́ю метку "Last Access Time" каждый раз, когда файл или директория читаются. Это означает дополнительную операцию записи в MFT при каждом чтении — overhead, который может заметно снизить производительность, особенно на SSD (лишние циклы записи) и HDD (дополнительные seek).​

Режимы работы DisableLastAccess

Начиная с Windows 10, Microsoft ввела 4 режима:​

-4

В режиме "System Managed" Windows при загрузке проверяет размер системного тома: если он >128 ГБ, обновления Last Access отключаются автоматически. Для томов ≤128 ГБ — включаются. Это разумный компромисс между производительностью и функционалом.​​

Проверка текущего режима:

fsutil behavior query disablelastaccess

Вывод, например:

DisableLastAccess = 3 (System Managed, Last Access Updates Disabled)

Отключение Last Access Time вручную

Для максимальной производительности (особенно на SSD и при высокой нагрузке I/O):

fsutil behavior set disablelastaccess 1

Включение обратно (если нужен аудит или резервное копирование полагается на Last Access):

fsutil behavior set disablelastaccess 0

Возврат к автоматическому режиму (рекомендую):

fsutil behavior set disablelastaccess 3

⚠️ Перезагрузка обязательна для применения изменений.​

Альтернатива через реестр

Можно также отключить через реестр (актуально для Windows 7 и Server 2008):​

Путь:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem

Параметр:
NtfsDisableLastAccessUpdate (REG_DWORD)

Значение:

  • 0 = обновления включены
  • 1 = обновления отключены

Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "NtfsDisableLastAccessUpdate" `
-Value 1

Перезагрузка также требуется.

Влияние на производительность

Отключение Last Access Time даёт прирост:

  • На HDD: 5-10% на операциях массового чтения файлов (например, индексация, антивирусная проверка)​
  • На SSD: продление срока службы (меньше write cycles) + 3-7% ускорение при высокой нагрузке I/O​
  • На файловых серверах: заметное снижение latency при большом количестве одновременных обращений​

Кому может понадобиться включённый Last Access:

  • Системы резервного копирования, которые полагаются на Last Access для определения "холодных" файлов
  • Compliance/аудит, требующий точных метрик доступа к файлам
  • Storage Sense в Windows, который использует Last Access для очистки​

На практике: если ты не делаешь аудит файлового доступа, смело отключай. Современные бэкап-решения обычно используют другие метрики (Modified Time, размер, hash).​

Best Practices: комплексная оптимизация NTFS

1. Выбор размера кластера при форматировании

Чек-лист:

  • Системный диск (C:) → 4 КБ (нужна поддержка compression)
  • Диск данных с мелкими файлами → 4 КБ
  • Медиа/видео → 32-64 КБ
  • SQL Server / базы данных → 64 КБ​
  • Hyper-V / виртуализация → 64 КБ​
  • Универсальный диск (смешанный контент) → 16 КБ (компромисс)

2. Настройка MFT Zone

Если у тебя >1 млн файлов на томе:

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "NtfsMftZoneReservation" `
-Value 2 `
-PropertyType DWORD `
-Force
Restart-Computer

После изменения проверь размер MFT:

contig -a C:\$MFT

Если фрагментов >20, запусти дефрагментацию:

defrag C: /O /H /U

3. Отключение Last Access Time

Для SSD и высоконагруженных систем:

fsutil behavior set disablelastaccess 1

Для универсальной настройки (рекомендую):

fsutil behavior set disablelastaccess 3

Перезагрузи систему.

4. Отключение 8.3 имён (дополнительно)

Короткие имена DOS (8.3) создают overhead при работе с большим количеством файлов в одной директории. На современных системах 8.3 имена не нужны.​

Проверка:

fsutil 8dot3name query C:

Отключение для диска:

fsutil 8dot3name set C: 1

Удаление существующих 8.3 имён (ОСТОРОЖНО — может сломать старые приложения):

fsutil 8dot3name strip /s /f C:\

Это долгий процесс. Перед этим сделай полный бэкап. После выполнения 8.3 имена не будут создаваться для новых файлов.​

⚠️ Риск: некоторые старые 32-битные приложения и инсталляторы могут полагаться на 8.3 имена. Если у тебя есть legacy-софт, не трогай эту настройку.​

5. Регулярная дефрагментация (только для HDD)

Для HDD:

defrag C: /U /V

Запускай раз в месяц или настрой автоматическую дефрагментацию через Task Scheduler.

Для SSD:
Не дефрагментируй! Windows автоматически запускает TRIM через "Optimize Drives". Проверка:​

fsutil behavior query disabledeletenotify

Если вывод DisableDeleteNotify = 0 — TRIM включён (это правильно).​

6. Мониторинг и диагностика

Проверка здоровья тома:

chkdsk C: /scan

Проверка фрагментации:

defrag C: /A /V

Проверка производительности диска (CrystalDiskMark, AS SSD Benchmark) — делай до и после оптимизации, чтобы видеть реальный эффект.

Безопасность и откат изменений

Перед любыми изменениями:

  1. Создай точку восстановления: Checkpoint-Computer -Description "Before NTFS optimization" -RestorePointType MODIFY_SETTINGS
  2. Экспортируй ветку реестра: reg export "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" C:\backup_filesystem.reg
  3. Бэкап важных данных (особенно перед форматированием и strip 8.3 names).

Откат изменений:

Если система не загружается после изменений реестра:
Загрузись в Safe Mode (F8 / Shift+F8 при старте) и импортируй бэкап реестра:

reg import C:\backup_filesystem.reg

Если проблемы с Last Access:

fsutil behavior set disablelastaccess 2

Перезагрузка.

Если проблемы с 8.3 именами:

fsutil 8dot3name set C: 0

Перезагрузка. Удалённые 8.3 имена восстановить нельзя — только переформатирование + восстановление из бэкапа.

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

Реальные цифры из практики:

Кластер 4 КБ vs 64 КБ (тест на SSD, последовательная запись 1 ГБ файла):

  • 4 КБ: ~480 МБ/с
  • 64 КБ: ~950 МБ/с (прирост ~98%)​

HDD, random read (4 КБ блоки, средние файлы ~5 МБ):

  • 4 КБ кластер: ~85 IOPS
  • 16 КБ кластер: ~110 IOPS (+29%)
  • 64 КБ кластер: ~135 IOPS (+59%)​

Отключение Last Access на файловом сервере (100 одновременных пользователей, операции чтения):

  • До: average latency ~45 мс
  • После: average latency ~38 мс (снижение на ~15%)​

MFT дефрагментация (том 1 ТБ, 2 млн файлов, HDD):

  • До: 15% фрагментация MFT, время открытия файла ~120 мс
  • После: 1% фрагментация, время открытия ~85 мс (ускорение ~30%)​

Типичные ошибки и диагностика

Ошибка 1: "Can't Optimize Drive" при попытке дефрагментации

Симптом: при запуске Optimize Drives выдаётся ошибка "Optimization not available".​

Причина: сервис defragsvc отключён или повреждены записи в реестре.

Решение:

  1. Открой services.msc
  2. Найди "Optimize drives" (defragsvc)
  3. Установи Startup type = Manual, нажми Start
  4. Если не помогает: reg add "HKLM\SYSTEM\CurrentControlSet\Services\defragsvc" /v Start /t REG_DWORD /d 3 /f
    reg add "HKLM\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction" /v Enable /t REG_SZ /d Y /fПерезагрузка.​

Ошибка 2: Огромный размер $MFT (десятки ГБ)

Симптом: $MFT занимает >10% от размера тома, хотя файлов не так много.​

Причина: на томе раньше было очень много файлов, которые удалили. MFT не сжимается автоматически — записи помечаются как deleted, но место не освобождается.​

Решение:

  • Короткий путь: нет решения без переформатирования. MFT не shrink'ается.​
  • Долгий путь: бэкап → format → restore.​
  • Альтернатива: Paragon Partition Manager 9 (древняя версия, работает только с MBR-дисками, не GPT). Не рекомендую.​

Ошибка 3: Снижение производительности Windows 11 на NVMe SSD

Симптом: после обновления до Windows 11 скорость random write упала на 50-60%.​

Причина: баг в USN Journal в ранних версиях Windows 11 — при каждой записи выполнялись лишние операции.​

Решение:
Установи обновление KB5007262 (November 2021) или новее:

Get-WindowsUpdate -Install

Или вручную скачай с Microsoft Update Catalog.​

Ошибка 4: Файлы не копируются — "filename too long"

Симптом: при копировании файлов Windows выдаёт ошибку "The file name(s) would be too long for the destination folder".

Причина: ограничение MAX_PATH (260 символов) в старых приложениях. NTFS сам по себе поддерживает пути до 32 767 символов, но legacy-API ограничено 260.​

Решение:

  1. В Windows 10 1607+ можно включить длинные пути: New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
    -Name "LongPathsEnabled" `
    -Value 1 `
    -PropertyType DWORD `
    -ForceПерезагрузка.​
  2. Используй Robocopy (не имеет ограничения 260): robocopy "C:\source" "D:\destination" /E /COPYALL
  3. Или subst для сокращения пути: subst Z: "C:\very\long\path\to\folder"
    copy Z:\file.txt D:\
    subst Z: /D

Чек-лист: перед внедрением оптимизации

Сделай полный бэкап системы и данных (Veeam, Acronis, Windows Backup)

Создай точку восстановления системы

Экспортируй ветку реестра FileSystem (reg export)

Проверь здоровье диска (chkdsk /scan, CrystalDiskInfo для SMART)

Замерь текущую производительность (CrystalDiskMark, AS SSD) для сравнения

Убедись, что нет критичных задач на сервере (выбери maintenance window)

Проверь, нет ли legacy-приложений, которым нужны 8.3 имена или Last Access

Документируй каждое изменение (что, когда, почему — для отката и аудита)

Тестируй на некритичной системе сначала

Вопросы и ответы

-5

Заключение

Оптимизация NTFS — это не про магические твики, а про понимание механики работы файловой системы и применение правильных настроек под конкретную нагрузку. Три кита производительности — размер кластера, управление MFT и контроль Last Access Time — дают реальный прирост в 10-30% на типичных рабочих нагрузках, особенно заметный на файловых серверах и системах с интенсивным I/O.

На практике я рекомендую: кластер 4 КБ для системных дисков, 16-64 КБ для данных, MFT Zone 2-3 для серверов с большим количеством файлов, DisableLastAccess = 3 (System Managed) для универсальности или 1 для максимальной производительности на SSD. И обязательно отключай 8.3 имена на новых системах — это архаизм, который только тормозит.

Не забывай тестировать изменения до внедрения в продакшн и всегда имей план отката. NTFS — надёжная и быстрая файловая система, но только если её правильно настроить под свои задачи.

Подпишись на канал T.E.X.H.O Windows & Linux, чтобы не пропустить гайды по оптимизации систем, тюнингу производительности, безопасности и сетевым трюкам. Каждая статья — это проверенные в бою решения, а не теоретические рассуждения.

-6

#NTFS #OptimizationTips #Windows11 #WindowsServer2025 #FileSystem #MasterFileTable #MFT #ClusterSize #Performance #DisableLastAccess #DiskOptimization #SSD #HDD #SystemTuning #RegistryTweaks #FileServer #DevOps #SysAdmin #PythonDev #WindowsRegistry #StorageOptimization #FileSystemPerformance #NTFSCompression #Defragmentation #TechChannel #TEXHOWindows #WindowsLinux #ServerOptimization #PerformanceTuning #ITProTips