强制dynamic扩展VHDX的初始化

假设我们有64GB的dynamic扩展VHDX。 安装操作系统之后,“dynamic初始化”的空间约为10GB左右。 现在,我知道我将需要大约25GB的空间 – 例如总共35GB。

问题:如何强制初始化任何部分(例如35G)或VHDX文件的其余部分?

动机:当虚拟化系统进行一些额外的软件安装时,这个过程比较慢,因为除了安装文件之外,VHDX需要初始化额外的空间。 所以我希望能够提前初始化空间,到时候,附加软件的安装就不会永远占用了。

最简单的方法是运行任何磁盘基准testing工具,这将创build一个所需大小的testing文件,迫使下面的VHDX扩展。

您可以使用Microsoft DiskSPD达到此目的: https ://gallery.technet.microsoft.com/DiskSpd-a-robust-storage-6cd2f223

命令行将是这样的:

Diskspd.exe -b64K -d10 -h -L -o1 -t1 -s -w100 -c20G c:\ io.dat

其中-c 20G是所需的大小, c:\ io.dat是文件path。

删除创build的testing文件后,您将释放空间,但VHDX保持浮动状态。

希望能帮助到你。

请使用带有z开关的sysinternal sdelete。

sdelete -z <driveletter:> 

z开关零填充零空间,因此您的图像将增长到它的大小的100%。

请注意,要使用diskpart compact vdisk命令切割其后的空间,您可以将其切割为文件中标记为零的可用空间。