VMWare下的Linux虚拟机,使用时间越长,磁盘文件(*.vmdk文件)会越来越大。清理虚拟机内文件后,还是不会减少。用VMWare自带的磁盘压缩,也不见效果。这是个Linux虚拟机的通病,经过几代VMWare版本的升级也得不到解决。
具体的操作步骤如下:
1、打开Ubuntu虚拟机的终端
#切换为root用户
sudo su
#将占用空间却无法清理的东西转变成一个 zero.fill文件,这个过程的时间会比较长,最后出现:cat: 写入错误: 设备上没有空间
cat /dev/zero > zero.fill
#将这个zero.fill文件彻底删除
rm -f zero.fill
注意:在此过程中并不会增大虚拟机vmdk文件的容量,因此不用担心硬盘分区被挤爆。
#关闭虚拟机
sudo shutdown now
2、VMWare硬盘压缩
编辑虚拟机设置——硬件——硬盘(SATA),选择实用工具——压缩(C)
过一段时间,等压缩完毕后,将VMWare关闭。
重新打开VMWare,查看一下硬盘——容量——当前大小,应该会和虚拟机实际硬盘占用相差不大了。