vmware虚拟机安装开发系统的时候,一般都会多预留点磁盘空间,用的时间长了,本地占用的磁盘空间远超虚拟机实际文件的内容。

场景描述

df -h命令,查看当前机器的磁盘信息,实际用了 60G,删掉所有的快照和克隆镜像,本地虚拟机占用的磁盘空间依旧远大于 60G,让本就不富裕的硬盘,雪上加霜。

前置条件

  • 虚拟机安装的时候,没有勾选预分配磁盘
  • 本地存放虚拟机的硬盘,剩余的磁盘空间大于当前虚拟机所占用的空间

剩余的空间不足,可以考虑临时移动虚拟机到移动硬盘,优化了磁盘以后再迁移回来。

工具

官方提供了open-vm-tools包,可以通过 yum 安装或者 vmware-tools 镜像包安装

命令

vmware-toolbox-cmd disk shrink /

执行了以后,虚拟机会自动关机,vmware 宿主程序会执行磁盘压缩,执行时间取决于虚拟机的体积和磁盘的访问速度。

执行效果还是很不错的,虚拟机的磁盘空间占用基本等于df -h的磁盘信息。