调整VHD Hyper V Server 2008 R2的大小

我有安装了Hyper V的Windows Server 2008 R2。

其中一台虚拟机是150GBdynamic扩展虚拟硬盘(Windows)。 我想缩小到100GB,但我似乎无法实现这一点。

我到目前为止所尝试过的;

  • 在客人机器上打开磁盘pipe理,将HDD缩小50GB,现在在客户机上显示为“未分配”。
  • 确保没有来宾操作系统的快照
  • 对客机进行碎片整理
  • 在Hyper V中select了访客机器并运行“compact”

然而,无论何时我在Hyper V中检查磁盘,它仍然显示为150GB,没有任何变化。

我也尝试过使用diskpart工具,在guest OS上使用以下命令,但是结果相同;

 select vdisk File=”I:\path\to\your.vhd” attach vdisk readonly compact vdisk detach vdisk 

我错过了什么吗?

几个问题;

我读过,dynamic扩展虚拟硬盘是不可能的,这是真的吗? 如果我只是删除Hyper V中的虚拟机,150GB将重新分配给哪里?

我无法导出虚拟机,并创build一个新的,因为我的主机是非常低的空间。

根据这篇文章 ,

VHD虚拟磁盘格式不支持收缩

我尝试了很长一段时间的完全相同的步骤,从来没有成功。 最好尽可能重新创build虚拟磁盘,节省一些时间。

您可以收缩dynamic扩展虚拟硬盘。 你已经在客户机中缩小了卷,所以从PowerShell中尝试:

Resize-VHD -Path c:\ BaseVHDX.vhdx -SizeBytes 1TB(1TB就是一个例子)

要么

Resize-VHD -Path c:\ BaseVHDX.vhdx -ToMinimumSize

如果是.VHD,则使用.VHD而不是.VHDX