Изменение размера зоны NTFS MFT
Я читаю статью о NTFS на сайте MSDN. Вот часть этого, обратите внимание на выделенные части:
"Вы можете изменить размер зоны MFT для вновь создаваемых томов, чтобы они соответствовали проценту от объема, который будет использоваться в качестве зоны MFT. Размеры зоны MFT приведены ниже:
Настройка 1 по умолчанию резервирует приблизительно 12,5 процента объема.
Установка 2 резервов примерно 25 процентов.
Установка 3 резервов примерно 37,5 процента.
Установка 4 резервов примерно на 50 процентов.
На большинстве компьютеров значение по умолчанию 1 достаточно. Настройка по умолчанию вмещает тома со средним размером файла 8 КБ. Хранение большого количества файлов меньшего размера может потребовать увеличения размера зоны MFT для новых томов.После увеличения размера зоны MFT NTFS не сразу выделяет пространство для размещения размера новой зоны MFT. Вместо этого NTFS исчерпывает исходное зарезервированное пространство перед увеличением размера зоны MFT ".
Означает ли это, что я могу только изменить Зону MFT для новых томов в будущем? И что,"оригинальное зарезервированное пространство" здесь составляет 12,5%? Это означает, что даже новые объемы, скажем, с зоной 50% MFT, должны превысить 12,5%, чтобы выделить остальные? Большое спасибо!
* Статья: https://technet.microsoft.com/en-us/library/cc781134(v=ws.10).aspx
2 ответа
Не могу комментировать.
@WRFan, вы говорите о "зарезервированном системном хранилище", пространстве, которое Windows выделяет для обновлений и т. Д., А не о MFT !!
Чтобы включить или отключить зарезервированное хранилище (освободить или выделить место), используйте:
DISM.exe /Online /Get-ReservedStorageState
DISM.exe /Online /Set-ReservedStorageState /State:Enabled
DISM.exe /Online /Set-ReservedStorageState /State:Disabled
изменение настроек компьютера не повлияет сразу на существующие тома
конечно, черт возьми, это не так. Фактически, похоже, нет никакого способа уменьшить размер зарезервированных кластеров MFT, кроме как переформатировать рассматриваемый том. Если кто-то знает, как это сделать, я весь в ушах.
Я столкнулся с проблемой при проверке места на жестком диске виртуальной машины VMWare. Запуск chkdsk возвращает
11.533.072 КБ
но Windows Explorer, cmd dir и т. д. возвращают 19,6 ГБ! Кто съел недостающее место? Кто это сделал ?! Гугл, конечно, ничего не знает. Эксперты-любители посоветуют вам включить скрытые файлы в проводнике, удалить hiberfil.sys и т. Д. Ерунда, конечно, все это. Итак, наконец, я наткнулся на ключевое слово $mft. Так что проверяю:
fsutil fsinfo ntfsinfo c:
сюрприз!
Total Reserved Clusters: 1.820.556 (6,9 GB)
Reserved for Storage Reserve: 1.809.957 (6,9 GB)
Вот ты где, озорной потерянный космос! Итак, это было проверено на Windows Enterprise 20H2 10.0.19042.804 x64 внутри VMWare. Для сравнения я проверяю то же самое на своем реальном жестком диске Windows LTSC 10.0.10240 x86. Выход:
Всего зарезервированных кластеров: 0x0000000000000d30
Ну, поговорим об обновлениях Windows! Они точно обновили команду fsutil за последние 5 лет! Как бы то ни было, xd30 == 3,376 кластера, а 20H2 зарезервировал 1,820,556 кластера -> 6,9 ГБ! Итак ... как вернуть? Проверив Google, желающие быть эксперты снова открыли свои жалкие рты! Говорят, просто дефрагментируйте свой жесткий диск, и проблема исчезнет! Исчезла моя арка! Дефрагментация просто дефрагментирует MFT, она не уменьшает зарезервированный размер.
Так здорово. Значит, бэкап, ВСЕ форматируйте, восстанавливайте. Конечно, проблемы кончились. Итак, сначала сделайте резервную копию:
Смонтируйте Win10 ISO (*.esd может быть преобразован в ISO, насколько я знаю, но у меня есть ISO здесь) в VMWare как DVD-привод
Подключите второй жесткий диск. Почему? Ну, ты просто читай дальше.
Теперь загрузитесь в boot.wim, выполните:
DISM / Capture-Image /ImageFile:XXX:\six.wim /CaptureDir: XXX: \ / Имя: Win10 /ConfigFile:XXX:\peexclude.ini / Сжать: быстро / Проверить
где peexclude.ini включает ерунду вроде
\$Recycle.Bin
\RECYCLER
\System Volume Information
\pagefile.sys
Ошибка 80: файл существует
Эээ ... Ошибка какая ?! Что ж, это загадочный способ MS сказать вам, что у Дама закончилась память. Со мной этого никогда не случалось на моем настоящем компьютере, так как у меня 4 ГБ памяти на моем старом компьютере и 32 ГБ на новом, но в настоящее время я работаю на своем старом ПК, 4 ГБ - 500 МБ зарезервированы для оборудования, поскольку x86 , так
wmic os get freephysicalmemory, totalvisiblememorysize
FreePhysicalMemory TotalVisibleMemorySize
2415424 3644720
Так что я мог выделить VMWare только 1,5 ГБ, этого недостаточно. Итак, нужен "ScratchDir", следовательно, нужен еще один жесткий диск:
mkdir XXX:\tmp
... /ScratchDir:XXX:\tmp
Хорошо, поэтому Вин отключил жесткий диск, затем я загрузился в виртуальную гостевую систему и скопировал резервную копию *.wim на свой настоящий жесткий диск с помощью инструментов VMWare (общие папки -> HKLM\SYSTEM\CurrentControlSet\Services\vmhgfs). Затем на реальной машине:
oscdimg -u2 -h -o -m -us -r "c:\copy\test" "d:\copy\burn.iso"
Итак, по сути, создание ISO, содержащего *.wim для восстановления.
Снова смонтировал установочный носитель 20H2 в VMWare как DVD-привод, то же самое с ISO, содержащим резервную копию Windows, как другой DVD-привод. Снова загрузился в boot.wim с установочного носителя Win, затем:
format /fs:ntfs /v:XXX /q c:
Invalid volume name...
Неверный что ??!! Давай проверим:
https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/format
/v:<label>
Что ж, Microsoft говорит, что синтаксис правильный, но сама команда форматирования говорит, что он неправильный. Иди разберись. Так что сбросил параметр метки, этот сработал. Формат дважды запрашивал имя тома. Кажется, одного раза недостаточно. Annoooooying! Проклятье эту странную команду! Восстановил моментальный снимок VMWare, вместо этого попробовал использовать подкоманду diskpart format:
diskpart
select disk 0
select partition 1
format fs=ntfs quick label=XXX
Volume in use. Use "override"
Эээ .. сверх чего? Нравится?
format fs=ntfs quick label=XXX override
Смотрите, оно сработало! Удачная догадка. Снова проверил общий размер зарезервированных кластеров, размер приличный, 4 МБ или что-то в этом роде. Итак, попытался восстановить образ wim:
dism /Apply-Image /ImageFile:XXX:\six.wim /Index:1 /ApplyDir:XXX:\ /Verify
Error 1450: "Insufficient system resources exist to complete the requested service"
Вот и все! Я иду домой! Больше мне не расстраиваться! Ну, по крайней мере, на этот раз ошибка была более явной. Опять кончилась память. Поэтому я выделил 1,6 ГБ для VMware, в результате чего моя настоящая Windows осталась без памяти, без штанов, а не для того, чтобы виртуальный гость заботился о моих проблемах. На этот раз это сработало. Перезагрузили виртуальную Windows, проверили место на жестком диске в проводнике:
> 12.087 GB
Сейчас мы говорим. Проверил зарезервированные кластеры:
Total Reserved Clusters: 13.360 (52,2 MB)
Reserved for Storage Reserve: 0 ( 0,0 KB)
Наконец! Также проверьте значения в:
HKLM\SYSTEM\CurrentControlSet\Control\FileSystem
Очень хотелось бы узнать, что изначально зарезервировано для MFT 7 ГБ. Кроме того, я до сих пор не знаю, как уменьшить зарезервированный размер MFT, если не переформатировать. Microsoft? Кто-нибудь?