我有一个安装了 Hyper V 的 Windows Server 2008 R2。
其中一个虚拟机是一个 150GB 的动态扩展虚拟硬盘 (Windows)。我想把它缩小到 100GB,但是我似乎无法实现这一点。
到目前为止我已经尝试过什么;
- 在客户机上打开磁盘管理并将 HDD 缩小 50GB,现在在客户机中显示为“未分配”。
- 确保没有来宾操作系统的快照
- 对客户机进行碎片整理
- 在 Hyper V 中选择客户机并运行“compact”
但是,每当我在 Hyper V 中检查磁盘时,它仍然显示为 150GB,没有任何变化。
我也尝试过该diskpart
工具,在来宾操作系统上使用以下命令,但结果相同;
select vdisk File=”I:\path\to\your.vhd”
attach vdisk readonly
compact vdisk
detach vdisk
我错过了什么吗?
几个问题;
我读到不可能收缩动态扩展的虚拟硬盘 - 这是真的吗?如果我只是在 Hyper V 中删除 VM,那么 150GB 将重新分配到哪里?
我无法导出虚拟机并创建一个新虚拟机,因为我的主机空间非常低。
根据这篇文章;
我尝试了很长一段时间完全相同的步骤,但从未成功。如果可能,最好重新创建虚拟磁盘,节省一些时间。
您可以收缩动态扩展的虚拟硬盘。您已经缩小了来宾中的卷,所以从 PowerShell 尝试:
Resize-VHD –Path c:\BaseVHDX.vhdx –SizeBytes 1TB(1TB只是一个例子)
或者
调整大小-VHD –路径 c:\BaseVHDX.vhdx –ToMinimumSize
如果是 .VHD,则使用 .VHD 而不是 .VHDX
cmdlet 在 2008 R2 版本的
Resize-VHD
PowerShell 中不存在,但有一种方法。在 Hyper-V 管理器 GUI 中,如果关闭使用 VHD 的 VM,则可以使用右侧“操作”面板中的“编辑磁盘...”功能来指定更大的大小。