前段时间在vmware下面安装了ubuntu镜像,用了一段时间后发现ubuntu的vmdk文件越来越大,达到了31.6GB,如下图所示。而且随着继续安装新的软件仍然在增大中,即使在ubuntu里面删除了文件仍然在windows主机中占用那么大的空间。但是在ubuntu下通过命令df -h查看,获取到的硬盘占用空间并没有那么大,非常的奇怪。

    

  网上查询了资料,网上的说法是:“虚拟机上的Linux等系统认为.vmdk是一个硬盘,将文件删除后其可用空间可以恢复,重新利用;而对windos系统来说.vmdk是一个文件其变大后是不可能自动变小的。 针对以上原理,已变大的.vmdk文件是无法减肥的,即使你将所有数据删除,此文件依占用windows的硬盘空间仍然不会改变。”

  网上针对vmdk文件越来越大的问题给出了数种解决方法。

  第一种方法是压缩磁盘。使用命令vmware-toolbox-cmd disk shrinkonly压缩磁盘,如下图所示。但我压缩后vmdk文件只是从31.6GB变成了31.5GB,感觉效果不明显。

  

第二种方法是在vmware的安装目录下,执行其中的vmware-vdiskmanager程序。 比如我的vmdk文件路径是在D:\ubuntu64\ubuntu64下,  则用命令提示符执行vmware-vdiskmanager.exe -k "D:\ubuntu64\ubuntu64\Ubuntu 64 .vmdk",如下图所示。但我执行完后占用空间没有发生变化。

第三种方法是“创建一个新的克隆”,然后删除旧的文件夹。这种方法我试过也是没用的。

之后我试过多种方法也没有用。没办法,只能暂时放任vmdk文件越来越大了。因为vmdk文件在windows的D盘,如果之后它比整个D盘要大,那我只能在windows下装个“分区助手”调整D盘的大小了。如果各位有好的方法欢迎一起探讨。

——————————————2023年04月2号更新————————————

最近又遇到这个问题,终于找到了解决方法,执行命令:

sudo /usr/bin/vmware-toolbox-cmd disk list                 # 查看磁盘挂载点,然后执行
sudo /usr/bin/vmware-toolbox-cmd disk shrink / 

即可解决。

参考:

How to reduce the size of VMware disk

释放vmware磁盘空间

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐