加粗样式虚拟机占用磁盘越来越大的解决方案大总结
在电脑上安装Vmware,安装ubuntu16.04 进行开发,使用过程中没有在意,忽然有一天发现磁盘空间快被占满了,经过排查是虚拟机的原因,具体的解决方法记录如下:
磁盘占用原因:
- 由于快照的储存,可以尝试把之前不需要的快照进行删除,删除的时候注意关机状态进行删除,未关机可能会出现删除出错,然后在快照管理中找不到快照了,但其实文件还是没有被删掉,会造成虽然删除快照,但是占用空间并没有缩小;
- 由于Vmware tools ,在虚拟机与本机之间进行文件传输的时候会产生缓冲文件,这些缓冲文件也会占用不少磁盘空间;
- 虚拟机使用过程中添加删除文件等形成磁盘碎片;
磁盘瘦身方法:
原占用磁盘空间94.8G
-
使用Vmware自带的磁盘清理((弄完之后94.8G))
-
使用Vmware自带的碎片整理和压缩(弄完之后94.8G)
-
删除Vmware tools 产生的缓冲文件 (弄完之后82.4G)
文件位置:cache/vmware/drag_and_drop,这个路径下的文件都可以删除 -
克隆快照(弄完之后71.4G)
关机状态下打开快照管理,选择要克隆的快照,右键克隆快照
选择完整克隆,不要选择链接克隆
设置要克隆的位置,克隆完成之后,将克隆的快照打开即可,打开 成功之后再选择删除原来的虚拟机数据; -
导出OVF(弄完之后76.9G)
关机状态下导出OVF文件
设置要导出的路径,导出成功之后再进行加载
加载方法:
(1) Vmware中 点击 【文件】 》【打开】 选择刚刚导出的OVF文件,进行导入即可。
(2)导入成功之后即可删除原来的虚拟机数据,不成功可以尝试重新导出OVF文件。
预防磁盘占用方法:
- 定时清理cache/vmware/drag_and_drop目录下的缓冲文件,不想自己手动清理可以使用使用linux的crontab自动任务调控;
- 在磁盘空间充足的时候就定期清理快照;
总结:
删除缓冲性价比最高,其他方法耗时都比较长。