hYPER-V虚拟磁盘如何压缩

2025-04-17 12:48:49
推荐回答(2个)
回答1:

Hyper-v占用的硬盘空间越来越多,有时候虚拟机中删除了几十个G的文件,但是占用宿主空间却不能自动收回,如何将空间彻底释放。

第一部分:首先删掉不用的Checkpoint,可以节约部分空间

  1. 每个检查点都占用大量空间

  2. 先关闭虚拟机然后删掉检查点,之后关闭Hyper-v Manager

    请点击输入图片描述

    第二部分:压缩硬盘

    1. 在宿机打开磁盘管理器(计算机点右键-管理-磁盘管理,或者是运行diskmgmt.msc)

    打开磁盘管理器

    附加虚拟磁盘

    找到具体虚拟磁盘,勾选只读

    2. 利用powershell运行Optimize-VHD -Path C:\Hyper-V\win10-pc\win10.vhdx -Mode Full。C:\Hyper-V\win10-pc\win10.vhdx是具体的虚拟机硬盘路径,记得更换。回车之后将对VHDX硬盘空间进行压缩,你会发现收缩很多。(前提是你的虚拟机硬盘实际占用空间少,往往是虚拟机中删除了大量文件而占用宿主空间不变的时候。)

第三部分:注意事项:

  1. 释放VHDX,如果不释放,你的虚拟机启动时可能会报错,最简单的释放就是:重启电脑

  2. 禁用checkpoint

    禁用检查点

回答2:

在用微软Hyper-V创建虚拟机的时候,一般都选择动态扩展磁盘,具有占用物理硬盘空间小,创建速度快等优点。但也有个缺点,就是不能自动回收空间,比如,往虚拟机里复制一个5G的文件,虚拟机的物理VHD/VHDX文件就会增大5G,当把这个5G文件删除后,物理VHD/VHDX文件却不会减少,这样用一段时间后,物理VHD文件会膨胀到虚拟磁盘的最大值,对于存储空间来说,是很大的浪费,Hyper-V设置里面编辑磁盘里面有压缩磁盘的功能,但是压缩后,VHD/VHDX大小不会发生改变,偶尔发现的一个方法,可以实现VHD/VHDX压缩,分享一下:
1、首先将虚拟机关机,我们查看一下VHD/VHDX的大小,是6.12GB;

2、将VHD/VHDX文件附加到本地磁盘管理中;

3、勾选”只读“;

4、打开Hyper-V管理器中的编辑磁盘,进行压缩;

5、选择”压缩“;