Изменение размера зоны 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 Zone должны израсходовать 12,5%, чтобы выделить остальные? Большое тебе спасибо!

* Статья: https://technet.microsoft.com/en-us/library/cc781134(v=ws.10).aspx


person Best_Name    schedule 22.07.2016    source источник
comment
Это действительно не очень понятно, не так ли? Мое обоснованное предположение состоит в том, что они имеют в виду, что изменение настроек компьютера не повлияет сразу на какие-либо существующие тома. Но если вы отформатируете новый том (или переформатируете существующий), будет использоваться новая настройка.   -  person Harry Johnston    schedule 23.07.2016
comment
Спасибо за ваш ответ! Надеюсь, кто-то другой может прояснить для нас ситуацию :).   -  person Best_Name    schedule 23.07.2016


Ответы (2)


изменение настроек компьютера не повлияет сразу на существующие тома

конечно, черт возьми, это не так. Фактически, похоже, нет никакого способа уменьшить размер зарезервированных кластеров MFT, кроме как переформатировать рассматриваемый том. Если кто-то знает, как это сделать, я весь в ушах.

Я столкнулся с проблемой при проверке места на жестком диске виртуальной машины VMWare. Запуск chkdsk возвращает

11.533.072 KB

но 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? Кто-нибудь?

person WRFan    schedule 11.03.2021

Не удалось оставить комментарий

@WRFan, вы говорите о системном зарезервированном хранилище, пространстве, которое Windows выделяет для обновлений и т. Д., не MFT !!

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

DISM.exe /Online /Get-ReservedStorageState

DISM.exe /Online /Set-ReservedStorageState /State:Enabled
DISM.exe /Online /Set-ReservedStorageState /State:Disabled
person doterik    schedule 28.07.2021