首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >改变NTFS MFT区域的大小

改变NTFS MFT区域的大小
EN

Stack Overflow用户
提问于 2016-07-22 14:28:13
回答 2查看 1.5K关注 0票数 0

我在MSDN网站上读到一篇关于NTFS的文章。下面是其中的一部分,注意突出显示的部分:

您可以更改新创建的卷的MFT区域的大小,使其与用作MFT区域的卷的百分比相对应。

设置1,默认情况下,保留约12.5 %的卷。

设置2储备约25 %。

设定3储备约占37.5 %。

设定4储备约50 %。

在大多数计算机中,默认设置为1就足够了。默认设置容纳平均文件大小为8KB的卷。存储大量较小的文件可能需要为新卷增加MFT区域的大小。在增加MFT区域大小后,不会立即分配空间来容纳新MFT区域的大小。相反,NTFS会在增加MFT区域大小之前耗尽原始预留空间

这是否意味着我只能在未来将MFT区域改为新卷?那么,“原来的预留空间”是12.5%?这意味着,即使是50%的MFT区域的新卷,也不得不把剩下的12.5%分配出去吗?非常感谢!

*文章:https://technet.microsoft.com/en-us/library/cc781134(v=ws.10).aspx

EN

回答 2

Stack Overflow用户

发布于 2021-07-28 13:14:46

我无法发表评论。

@WRFan您指的是“系统预留存储”,一个用于更新的空间,而不是MFT !!

若要启用或禁用保留存储(空闲或分配空间),请使用:

代码语言:javascript
复制
DISM.exe /Online /Get-ReservedStorageState

DISM.exe /Online /Set-ReservedStorageState /State:Enabled
DISM.exe /Online /Set-ReservedStorageState /State:Disabled
票数 1
EN

Stack Overflow用户

发布于 2021-03-11 15:52:55

更改计算机设置不会立即影响任何现有卷

当然,它不会。事实上,似乎没有任何办法来减少MFT保留的集群规模,除非重新调整所讨论的数量。万一有人知道怎么做,我会留心的。

我在检查VMWare虚拟机硬盘空间时遇到了这个问题。运行chkdsk返回

11.533.072 KB

但是Windows资源管理器、cmd dir等返回19.6GB!谁吃了丢失的空间?谁干的?!当然,谷歌什么也不知道。想要成为专家的人会告诉你在资源管理器中启用隐藏文件,删除hiberfil.sys等等.当然都是胡说八道。最后,我遇到了关键字$mft。所以我查证:

fsutil fsinfo ntfsinfo c:

惊喜!

代码语言:javascript
复制
Total Reserved Clusters: 1.820.556 (6,9 GB)
Reserved for Storage Reserve: 1.809.957 (6,9 GB)

你来了,你这个淘气的人失去了空间!因此,这是在WindowsEnterprise20H2 10.0.19042.804 x64中在VMWare中检查的。为了进行比较,我在我的真正硬盘WindowsLTSC10.0.10240 x86上检查了相同的内容。输出:

保留群集总数:0x000000000000000d30

好吧,说到Windows更新!在过去的5年里,他们确实修改了fsutil的命令!不管怎样,xd30 == 3.376集群,而20H2则保留1.820.556集群-> 6.9GB!所以..。如何回收?看看谷歌,想要成为专家的人又张开了他们可怜的嘴巴!他们说,只要整理一下硬盘,问题就解决了!走了我的地盘!碎片整理只是碎片的MFT,它并没有减少保留的大小。

所以,太好了。意思是,备份,格式化一切,恢复。当然,到处都是问题。首先,备份:

将Win10 ISO (据我所知,*.esd可以转换为ISO )作为DVD驱动器安装到VMWare中。

附加第二个硬盘。为什么?好吧,你刚刚读到了。

现在引导到boot.wim,做:

dism /Capture-图像/ImageFile:XXX:\six.wim /CaptureDir:XXX:\ /Name:Win10 /ConfigFile:XXX:\peexclude.ini /Compress:fast /Verify

其中peexclude.ini包含牛头*不喜欢

代码语言:javascript
复制
\$Recycle.Bin
\RECYCLER
\System Volume Information
\pagefile.sys

错误80:文件存在

错误..。错误什么?!嗯,这是MS神秘的方式告诉你的功能耗尽了记忆。这种情况从未发生在我的真实pc上,因为我的旧PC上有4GB内存,新pc上有32 GB内存,但是现在,我在我的旧PC上运行,4gb- 500 MB预留给硬件,因为x86,所以

代码语言:javascript
复制
wmic os get freephysicalmemory, totalvisiblememorysize

FreePhysicalMemory  TotalVisibleMemorySize
2415424             3644720

因此,我只能将1.5GB分配给VMWare,这还不够。因此需要"ScratchDir",因此需要另一个硬盘:

代码语言:javascript
复制
mkdir XXX:\tmp

... /ScratchDir:XXX:\tmp

好的,所以Win - to ed硬盘,然后我引导到虚拟客户机,并使用*.wim工具(共享文件夹-> HKLM\SYSTEM\CurrentControlSet\Services\vmhgfs )将VMWare备份复制到我的真正硬盘上。然后,在真正的机器上:

-u2 -h -o -m -us -r "c:\copy\test“"d:\copy\burn.iso”

因此,基本上,创建一个包含要恢复的*.wim的ISO。

将20H2安装媒体再次作为DVD驱动器安装到VMWare中,与包含Windows备份的ISO作为另一个DVD驱动器一样。再次在Win安装媒体上引导到boot.wim,然后:

代码语言:javascript
复制
format /fs:ntfs /v:XXX /q c:

Invalid volume name...

无效什么?!!让我们检查一下:

https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/format

代码语言:javascript
复制
/v:<label>

微软说,语法是正确的,但是格式命令本身说它是错误的。去想一想。所以去掉了标签参数,这个有效了。格式要求卷名两次。看来,一次是不够的。安诺呜!该死的这个奇怪的命令!还原VMWare快照,尝试使用diskpart格式子命令代替:

代码语言:javascript
复制
diskpart

select disk 0

select partition 1

format fs=ntfs quick label=XXX

Volume in use. Use "override"

呃..。结束-什么?是像这样吗?

代码语言:javascript
复制
format fs=ntfs quick label=XXX override

看,它成功了!幸运的猜测。再次检查Total保留的集群大小,大小是不错的,4MB或类似的东西。因此,试图恢复wim图像:

代码语言:javascript
复制
dism /Apply-Image /ImageFile:XXX:\six.wim /Index:1 /ApplyDir:XXX:\ /Verify

Error 1450: "Insufficient system resources exist to complete the requested service"

就这样!我要回家了!别再为我胡闹了!好吧,至少这次错误更明显了。又没记忆了。所以我把1.6GB的内存分配给了VMware,这使得我真正的Windows没有内存,裤子也没问题,而虚拟客人并不关心我的问题。这次起作用了。重新启动虚拟Windows,选中资源管理器中的硬盘空间:

代码语言:javascript
复制
> 12.087 GB

现在我们在谈。检查了保留的集群:

代码语言:javascript
复制
Total Reserved Clusters: 13.360  (52,2 MB)
Reserved for Storage Reserve: 0  ( 0,0 KB)

终于来了!此外,请检查以下值:

HKLM\SYSTEM\CurrentControlSet\Control\FileSystem

我真的很想知道最初为MFT预留了7GB的东西。此外,我仍然不知道如何减少MFT保留的大小,除非重新格式化。微软?有人吗?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38528974

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档