压缩虚拟磁盘可回收虚拟磁盘中未使用的空间,并缩减虚拟磁盘在主机上占用的空间量。

开始之前

  • 在 Linux、Solaris 和 FreeBSD 客户机操作系统中,以 root 用户身份登录。如果以非 root 用户身份压缩虚拟磁盘,则无法准备压缩虚拟磁盘中要求 root 级别权限的部分。

  • 在 Windows 客户机中,以管理员身份登录。

  • 请确认主机的可用磁盘空间等于计划压缩的虚拟磁盘的大小。

关于此任务

在以下情况下不允许压缩磁盘:

  • 虚拟机在 ESX/ESXi 主机上驻留。仅当虚拟机已导出时,ESX/ESXi 才可以压缩虚拟磁盘的大小。但是,虚拟磁盘在服务器上占据的空间不会改变。

  • 虚拟机有 Mac OS X 客户机操作系统。

  • 创建时,已将所有磁盘空间预先分配给虚拟磁盘。

  • 虚拟机包含快照。

    例外是如果在 VMware Fusion 4 中使用虚拟机且虚拟机具有 Windows 客户机操作系统。在这种情况下,可以使用 Fusion 中的清理虚拟机功能压缩磁盘。

  • 虚拟机是链接克隆或是某个链接克隆的父级。

  • 虚拟磁盘是处于非持久模式下的独立磁盘。

  • 该文件系统是一个日志文件系统,例如 ext4xfsjfs 文件系统。

压缩磁盘的过程分为两步。在准备步骤中,VMware Tools 回收磁盘分区所有未使用的部分(例如已删除的文件),并对其进行压缩准备。此阶段将在客户机操作系统中执行。在此阶段中,仍然可以与虚拟机交互。

在压缩步骤中,VMware 应用程序将根据准备步骤中回收的磁盘空间缩减磁盘的大小。如果磁盘中存在可用空间,则此过程将缩减虚拟磁盘在主机驱动器上占用的空间大小。压缩步骤在虚拟机以外进行,需要花费大量时间,具体取决于磁盘的大小。当 VMware Tools 压缩磁盘时,虚拟机停止响应。

某些较新版本的 VMware 产品可能包含按钮或菜单项,其作用与压缩磁盘命令相同。例如,Workstation 包含最小化安装菜单项,您可以在关闭虚拟机电源时使用此命令。VMware Fusion 4 包含清理虚拟机按钮,即使您具有快照也可以压缩磁盘。

在某些情况下,使用压缩磁盘命令的功能可能被视为安全风险。要配置禁用压缩磁盘功能的设置,请参见与非特权用户帐户关联的威胁

过程

  1. 打开客户机操作系统中的命令提示符或终端。
  2. 更改到 VMware Tools 安装目录。

    操作系统

    默认路径

    Windows

    C:\Program Files\VMware\VMware Tools

    Linux 和 Solaris

    /usr/sbin

    FreeBSD

    /usr/local/sbin

    Mac OS X

    /Library/Application Support/VMware Tools

  3. 键入命令以列出可用挂载点。
    utility-name disk list 
    

    对于 实用程序名称,请使用特定于客户机的程序名称。

    操作系统

    实用程序名称

    Windows

    VMwareToolboxCmd.exe

    Linux、Solaris 和 FreeBSD

    vmware-toolbox-cmd

  4. 键入命令以在指定的挂载点压缩磁盘。
    utility-name disk shrink mount-point

    对于 挂载点,请使用 list 子命令作用时显示的挂载点之一。