我在使用单个 SSD 的 Windows 7 Pro 主机上使用 VMWare Workstation 12 Pro。
在 VMWare 上我安装了 Windows 10 Pro,由于这是我的主要工作环境,我每周至少两次将其备份到不同的 NAS 盒中。
该实例分配了 80Gb 的空间,其中(根据 W10 实例)使用了 60Gb...但是,主机上文件的物理大小现在远远超过 70Gb。特别是在最近的 W10 升级之后,我通过“清理”删除了升级文件。
我尝试使用 VMWare 上的“碎片整理和压缩”选项来尝试回收 12Gb 以上的空间,但没有任何效果。而且由于主机使用的是 SSD,W10 实例不允许进行碎片整理。
有什么方法可以让我对 W10 实例运行碎片整理,以便我的备份更小?
(我知道对 SSD 进行碎片整理不是一个好主意,我也明白为什么......但是,我不会定期这样做!)
答案1
从虚拟机内部对虚拟磁盘进行碎片整理不会减少主机上的文件大小。它反而会变得更大。这是因为主机(或更准确地说:虚拟机软件,又称虚拟机管理程序)不了解内部文件系统,也不知道可以丢弃哪些数据。
有一个VMware 支持页面上的官方文章描述了实现目标的正确程序。有一系列要求:
如果虚拟机
- 包含快照
- 是链接克隆的父代
- 是链接克隆
如果虚拟机的任何虚拟磁盘
- 创建时预先分配
- 独立持久模式下不使用
- 未处于持久模式的旧磁盘
- 作为独立磁盘启动
还有一个隐含的要求,即必须在客户机上安装 VMware Tools。
该过程基于 VMware Tools 和虚拟机管理程序之间的协作。VMware Tools 从客户机的角度分析磁盘结构(因此他们可以洞察实际的文件系统结构)并将其报告给虚拟机管理程序,以便它可以丢弃未使用的扇区。
以下是 Windows 客户机的步骤(引自链接文章):
答案2
感谢@gonostaj 的回答,但不幸的是我没有在 VMware Tools 中看到选项卡式对话框。
经过一番搜索,我发现可以通过来宾实例上的以下命令行来完成缩减...
C:\Program Files\VMware\VMware Tool\VMwareToolboxCmd.exe disk shrink c:\