真正有效压缩虚拟磁盘文件VHDX

您所在的位置:网站首页 vhd磁盘 真正有效压缩虚拟磁盘文件VHDX

真正有效压缩虚拟磁盘文件VHDX

2023-06-10 12:10| 来源: 网络整理| 查看: 265

首先明确:hyper-v管理器里面“设置-硬盘驱动器-编辑-选择操作-压缩”并没有明显的效果。 然后区分几个关键词: hyper-v里面的“压缩(compact)”:虚机里磁盘的可用空间不变,虚拟磁盘文件大小变小(因为是回收虚机因删除文件释放出来的磁盘空间,所以不可能压缩到比虚机里磁盘总已用空间还小) hyper-v里面的“收缩”:虚机里磁盘的可用空间变小。(不可能影响已用空间) 磁盘管理工具(diskmgmt.msc)里面的“压缩卷”:使磁盘的可用空间变小。(不可能影响已用空间)

最后看方案: 1.有人给出的方案:碎片整理无效,还有反作用,应该先收缩,再压缩,再扩展。 如:先在磁盘管理工具里面“操作-附加VHD”,然后在有可用空间的分区上右键“压缩卷”(只支持NTFS,而且过程漫长,无进度条),然后分离VHD,在hyper-v管理器里面压缩,就有效果。 2.也有方案:建一个新的虚拟磁盘,使用diskgen或者Ghost11把原来磁盘的内容(按文件或者文件系统或者partition2partition拷过来),然后把新的虚拟磁盘当原来的磁盘用。

这两个感觉都不是很好,速度慢或根本没有进度条不知道过程如何了;或者不支持linux;或者新磁盘的有些硬件特征会改变。

看下面的:

3.对NTFS文件,用Windows Server PowerShell里面的Optimize-VHD小命令(cmdlet),操作如下:a.先在磁盘管理工具里面“操作-附加VHD”,记得勾选“read-only”(必不可少)b.打开PowerShell,输入Optimize-VHD -Path C:\YourVHDX.vhdx -Mode Full。运行后很快就OK了,磁盘文件显著变小了。关于Optimize-VHD详细一点的说明可参考:https://docs.microsoft.com/zh-tw/powershell/module/hyper-v/optimize-vhd?view=win10-ps

4.Linux系统,压缩前,要在虚机层面将标记为DELETE的文件彻底删除,也就是将虚机磁盘上的位置0。(具体置零的方法:下载systemrescue cd,用该cd启动虚机,运行zerofree,如zerofree /dev/sda1),然后再压缩。 这是国外论坛上给的方法,老外说这个systemrescuecd小巧好用,值得一试,下载网站:https://www.system-rescue.org/。然后Optimize-VHD -Path C:\YourVHDX.vhdx -Mode Prezeroed,这个不用在磁盘管理工具里面附加VHDX,不是NTFS,附加了对效率也没提升。

这两个方案应该是比较靠谱的,方案3亲测有效。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3