我在运行Hyper-V Server 2008 R2的主机上托pipe多台虚拟机。 这些磁盘最初在16个月前在不同的服务器(2008,不是R2)上进行了configuration,并在一年前被迁移到该服务器上。 大多数客人正在运行Windows 7。
最近,我将VHD大小与客户报告的使用空间进行比较,发现有几台机器的VHD文件比实际需要的大50-100%。 所以我决定尝试压缩VHD文件以释放主机上的空间。 我遵循我在互联网上find的指示,大致如下:
我第一次尝试这个,它完美的工作,减less了50%的VHD的大小。 但是对于其他所有guest虚拟机的磁盘,我收到以下错误消息:
The server encountered an error trying to edit the virtual disk. 'The system failed to compact 'C:\example.vhd'. Error Code: The requested operation could not be completed due to a file system limitation
没有客人启用NTFS压缩。 这些磁盘没有快照。 还有什么可能导致这个错误?
编辑 :任何人谁介绍了一个解决scheme,以保持dynamicVHD尺寸自动检查的奖励积分。
从客人删除阴影副本。 这将做到这一点!
vssadmin delete shadows /all
为了互联网search整合的利益:最终发现这个链接是一种在HyperV compact没有的情况下工作的方法: https : //fiddley.wordpress.com/2014/01/27/dynamically-expanding-vhd-not-compacting-在-Hyper-v的/
在pipe理命令提示符下运行DISKPART
在DISKPART命令提示符下
select vdisk File=”I:\path\to\your.vhd” attach vdisk readonly compact vdisk detach vdisk