我如何得到一个VHD与压缩相媲美的ZIP?

我的Azure服务依赖于一个巨大的文件树,我试图用VHD来处理这个文件树。 我目前打算做的是创build一个VHD文件,将其挂载,格式化为NTFS并启用NTFS透明压缩,然后将文件树复制到那里。 然后我将VHDfile upload到Windows Azure Blob存储。 当Azure实例启动时,它将下载VHD文件,将其安装并透明地使用它,就好像它在本地文件夹中一样。

一切都听起来不错,但文件树是800兆字节。 在启用NTFS压缩的情况下,它适合600兆字节的VHD文件。 然而,如果我ZIP文件树约400兆字节。

我想要一个尽可能小的文件,而不需要解压它 – 这样就可以“安装”并透明地使用它。 这就像VHD,但有更好的压缩。

我可以有更好的压缩VHD吗?

VHD已经相当好地缩小了,就像任何普通的硬盘一样,它们可能会碎片化,而且根据VHD的types,可能需要定期收缩,以使它们更小。 你可以尝试在上传VHD之前缩小VHD,看看是否改善了VHD。

http://blogs.technet.com/b/tonyso/archive/2008/10/09/hyper-v-how-to-shrink-a-vhd-file.aspx

似乎在下面的链接中的人设法压缩一堆大小超过180 GB的大型虚拟机到只有25 GB大小的VHDX驱动器!

我所遵循的主要技术是在VHDX驱动器中启动所谓的重复数据删除 (在服务器上工作,可以使用Win 8.1及更高版本),然后按照标准对虚拟磁盘进行碎片整理和压缩。

如果碎片整理真的会对这个规模产生影响,我会感到很惊讶,但这正是他所做的。

使用7zip进行进一步打包,即使是16 GB的压缩,也可以减less虚拟磁盘的灵活性。

http://deploymentresearch.com/Research/Post/406/Beyond-Zip-How-to-store-183-GB-of-VMs-in-a-16-GB-file-using-PowerShell