2

http://www.petri.co.il/virtual_creating_differencing_disks_with.htm

我按照这些步骤从 microsoft 创建了 WSSv3 演示 VHD 的“差异磁盘”。好一段时间过去了,忘记了它是一个“差异”磁盘,并且在进行碎片整理时,VUD(虚拟撤消磁盘)扩展以消耗我硬盘驱动器上剩余的可用空间。

除了将这些更改提交回原始 VHD 文件之外,它们是我缩小 VUD 的任何其他方式吗?

谢谢

[更新]

不幸的是,更改历史似乎保留了对文件的每次更改,甚至是文件碎片(为什么)。

org -> verA -> verB -> verC -> verD -> verE -> current.

一个工具可以很好地将历史树折叠为org -> current并删除/忽略其间的更改历史记录以及对更改日志进行碎片整理以进行优化。

[更新#2]

首先,对不起我的问题的扩展

其次,是否可以通过将差异磁盘与其差异父磁盘合并来缩小差异磁盘。

Base.VHD
 -> Child.VHD (Differential)
   -> Grandchild.VHD (Differential)

在将孙子与子合并时,大小将是 [子大小] + [孙子大小] 还是类似于 [子大小] + [孙子中实际文件差异的大小]?

再次感谢。

4

2 回答 2

2

差异磁盘记录了碎片整理程序所做的每一次更改,这就是它失控的原因。我怀疑您是否可以缩小它,因为它包含已进行但尚未提交的更改。

我认为您将不得不将更改提交到原始 VHD,或者丢弃所有更改。

于 2009-03-30T19:10:12.127 回答
2

谢谢格兰特,你是对的,我被臃肿的 VHD 卡住了要合并,但不知何故设法搞砸了,丢失了更改。

这是我发现的其他内容。

http://www.invirtus.com/blog/?p=7

这是一篇很棒的文章,解释了为什么差异如此之大。显然,每个字节都写入自己的 512 字节扇区,占用大量空间。

http://www.invirtus.com/downloads/Differencing_Disk_Discussion.ppt

本演示文稿解释了如何在存储差异磁盘时使用磁盘压缩以及撤消磁盘占用更少的空间。简而言之,将差异 VHD 或 VUD 放入 NTFS 压缩文件夹将为您节省大量空间。

[例子]

我为 Microsoft (5GB) 的 WSSv3 映像创建了一个差异磁盘,启动它并安装了软件。只是引导处理增加了 300mb 到 VHD,安装 TortoiseSVN (20MB) 增加了 200mb,安装 WSPBuilderExtensions (800KB) 增加了 1GB 到 VHD。

最终结果是 1.5GB 与安装 21MB 的差异。我将它与基础合并,结果只将 29MB 添加回父级。

然后,我在 NTFS 压缩文件夹中创建了另一个差异 VHD,启动它并通过 Central Admin 创建了一个新的 WSS Web 应用程序。文件大小跃升至 900MB,但仅导致文件系统上的 90MB 用于 NTFS 压缩。然后我创建了一个 VUD,重命名为 VHD 并完成了相同的操作。文件大小增加到 300MB,导致文件系统占用 12MB。

所以,是的,差分 VHD 非常无效,并且在任何时候都没有智能,但是膨胀允许一些很好的压缩。

For development you should also create a new VHD, attach it as a secondary drive and move your file here since any and every file IO is captured in the differencing or undo disk.

于 2009-04-02T10:37:41.057 回答