完美解决虚拟机占用硬盘越来越大、删除快照无效、菜单栏显示不全等问题

  • 简要说明
  • 原因排查
  • 尝试解决问题
  • 找外援,抱大腿
  • 峰回路转,确定问题
  • 解决问题,成功帮助小C减肥
  • 补充一个坑
  • 小结

简要说明

由于工作电脑是256G的SSD(C盘)+1T的机械硬盘(D盘),原本C盘就只用来装一些常用软件,也装不了多少。本着不浪费资源的宗旨,把虚拟机装在了C盘(其实是实在忍不了D盘启动的速度)。然而在用了一段时间后C盘飘红了。

原因排查

最初C盘飘红,我甚至都没有怀疑是由于虚拟机导致的,因为我在虚拟机里使用df -h命令查看的时候,分配的虚拟机容量也就在用了60%。然后在周末的时候,我用了一个堪称神器的可视化的磁盘空间分析工具——spacesniffer.exe。最终结果证明确实是虚拟机在作祟!


尝试解决问题

既然找到了问题所在,那就开始动手盘它!
开始百度虚拟机清理磁盘的方法,很好,搜索结果数不过来。开始一个一个试吧,花了几个小时基本试完了百度的各种方法,如下:

  1. 清理虚拟机下面的缓存文件
  2. 整理虚拟机磁盘碎片;
  3. 虚拟机磁盘压缩(有好多种方法)…

然后发现特喵的这些方法都还是有一点用的,真的就一点用!我的C盘被释放了好几个G,虽然C盘还是飘红。折腾完所有方法,也没结果,就先撂下了,去健身房活动活动。

找外援,抱大腿

周一上班,每次打开“我的电脑”,都会被这一条红杠亮瞎眼,还是需要解决一下,不然迟早我的C盘会变成0字节可用。想到或许同事曾经也遭受过这种“磨难”,毕竟大佬们吃过的饭比我多好多年。
找到一位大佬,表明想抱大佬的大腿,大佬立马表明这个问题他之前遇到过,也解决了,当时心里是泪奔啊,大佬就是大佬。大佬立马把他的秘笈发给了我,大佬还说这个操作需要一点时间,我觉得OK,毕竟要让可恶的虚拟机把我几十G的SSD吐出来,肯定得花点时间才对。我哼着小曲按照秘笈进行操作。以下是大佬秘笈:

#打开Ubuntu虚拟机
#清除回收站文件与缓存文件
sudo rm -rf .local/share/Trash/*
sudo rm -rf .cache/*
sudo sudo dd if=/dev/zero of=/tmpfile
#将碎片空间填充上0,结束的时候会提示磁盘空间不足,忽略即可
sudo rm -rf /tmpfile
#删除第二步的填充,如果用df -h 会发现可用的虚拟空间增加许多,但是实际的磁盘空间没有缩减
#关闭虚拟机,在windows命令行里执行vmware-vdiskmanager.exe(这个在VMware player里好像没有的,所以需要升级为VMware workstation pro版本!)
#打开cmd命令行
#以下两条命令根据自己安装路径灵活改变
CD D:\Program Files (x86)\VMware\VMware Workstation
vmware-vdiskmanager.exe -k "E:\Ubuntu16.04\Ubuntu 64 位.vmdk"
#如果提示虚拟机有快照,需删除快照

不知道哼了多少首小曲,终于将C盘所有磁盘空间都填充为zero数据了。删完填充的zero数据后,开始进行最后两步。终端居然果然提示该操作不能对带有快照的虚拟机进行操作。好吧,那我删掉快照还不行么。

在虚拟机快照管理器里删除唯一的快照。居然弹出一个错误“由于磁盘空间不足所以虚拟机快照删除失败”,我特喵的,梅菜你个小酥饼哦。还有这种操作?关掉错误对话框,管理器里边的快照却没有了。难道这家伙吓唬我的???
回到windows的cmd终端,继续执行大佬秘笈的最后一步,果然可以了,终端开始显示百分比了。等了10几分钟,终于100%了。心里对大佬又多了几分崇拜。开心的打开“我的电脑”准备查看蓝色的小C归来,结果惊掉了下巴。看来我跟大佬遇到的问题不完全一样啊。

峰回路转,确定问题

小C居然还穿着红衣服,刚刚的一顿操作,小C大概就瘦了大概3个G,我能怎么办,我也很绝望啊。

想了想,是不是刚刚删除快照那一步出了错?打开虚拟机的存放地址进行查看,之前的快照名的文件已经被删除了,但其它.vmdk文件似乎一个没少。难道…难道他喵的就只帮我删除了快照名?

将虚拟机拉到另一个显示器,同事监控当前虚拟机文件夹,我决定新建一个快照然后再删除,证实一下我的猜想。一个快照又占据了小C差不多8个G的容量,然后尝试删除快照,还是弹出了“由于磁盘空间不足所以虚拟机快照删除失败”的错误。忽略该错误,果然,他喵的就只帮我删除了带有快照名的那个文件。辛苦了半天的成果又被这波操作废掉了,小C越来越胖了!

此时,我才明白了,原来一开始我就找错了方向,小C长胖的真正原因是由于快照一系列操作造成的。
可现在,目录下已经没有带有快照名的文件了,即使我先把我的C盘大洗牌一次,腾出足够空间来进行快照删除操作,我又能怎么操作呢?

百度了一下这个错误,果然有这个坑!

解决问题,成功帮助小C减肥

删除合并快照时因磁盘空间不够导致快照管理器看不到快照无法完成的解决方法…
整体步骤为:在虚拟机快照管理器中——点击克隆——当前虚拟机状态——创建完整克隆——选择保存位置

在上面这篇博客中,大佬详细讲了解决办法,我就不赘述了。
说一下里面的坑:在将虚拟机clone到D盘后,D盘的虚拟机文件夹相比于C盘少了50多个G,但我用VMware打开clone后的虚拟机时,等来的却是黑屏。等了几分钟也没有动静。然后我尝试打开clone前的源虚拟机,也是黑屏,于是重启了电脑,直接打开D盘的虚拟机,OK了,里面文件都在,一切正常!
现在我正在将D盘的虚拟机又clone回C盘去~~ D盘真的太慢了 =。=



补充一个坑

我在clone完虚拟机后,当时验证的只是克隆后的虚拟机是否能够打开,终端是否正常,环境是否OK,文件是否都在。到今天要用的时候才发现打开的图形界面的菜单栏有一部分显示不全的问题。

**解决方法一:**我勾选了“3D图形加速”,解决了这个问题。一般来说,是不推荐勾选该选项的,勾选了该选项重启电脑后可能会出现一些问题,比如虚拟机卡在了开机过程中,一直黑屏。用任务管理器也杀不掉,不要慌,保存好电脑其他任务后重启电脑,取消勾选这个选项就好了。

**解决方法二:**参考下面这篇文章可以解决(不需要勾选3D加速)。Unity doesn’t load, no Launcher, no Dash appears

#安装compizconfig-settings-manager
sudo apt-get install compizconfig-settings-manager
#运行compizconfig-settings-manager软件
DISPLAY=:0 ccsm
#找到buntu Unity plugin,然后开启它,然后重启
sudo reboot
#重置
dconf reset -f /org/compiz/
unity –reset-icons &disown

小结

关于快照:因为之前出现过一次手残的情况,导致虚拟机重装,里面的开发环境都没有了,所以就用快照来进行备份开发环境。
关于docker:本来我是想直接用docker搭建开发环境的,直接备份一个镜像,多方便的。可之前同事说不用,自己又懒得折腾,就不了了之了。其实用起来还是很方便的。

第一次发博客,也是最近读了两本书,有了启发,想做点记录。

不要怕,干就完啦,奥利给!

完美解决虚拟机占用硬盘越来越大、删除快照无效、菜单栏显示不全等问题相关推荐

  1. linux x虚拟机占用硬盘太大,解决kvm虚拟机qcow2格式磁盘文件比实际空间占用大的问题 | 转 | leon的博客...

    在基于qcow2格式的虚拟机中进行删除文件操作后,物理磁盘文件并不会变小.可以用以下方法对磁盘文件瘦身. linux客户机 1.使用dd命令将客户机未使用的磁盘空间用0填满 $dd if=/dev/z ...

  2. SQL Server 2008 R2占用内存越来越大解决方法

    SQL Server 2008 R2占用内存越来越大解决方法 参考文章: (1)SQL Server 2008 R2占用内存越来越大解决方法 (2)https://www.cnblogs.com/pe ...

  3. winserver 443端口被system占用_手机系统占用内存越来越大,是谁的锅?

    大家好,我是老思机. 不知道大家有没有发现,不管是安卓系统还是 ios 系统,系统占用的空间好像越来越大,比如这样的. 还有这样的. 甚至 64G?失敬失敬,你才是大哥. 明明 1 个多 G 的系统固 ...

  4. 虚拟机安装mac注意事项(完美解决虚拟机安装mac的分辨率问题)

    磁盘需要抹掉 分配内存资源大于2G 其中commond + R 键可以使用VM中虚拟机->电源选项->打开电源时进入固件 然后进入boos系统 选择Enter setup-> Boo ...

  5. sim卡怎么注册更新服务器,完美解决SIM卡注册失败,手机SIM卡无效的办法(图文详解)...

    完美解决SIM卡注册失败,手机SIM卡无效的办法 问题描述:手机插上SIM卡之后开机,屏幕显示"SIM卡注册失败"."SIM卡无效",最终导致无法找到移动信号, ...

  6. 坑 之 tensorflow使用sess.run处理图片时越来越慢,占用内存越来越大的问题

    最近在项目中需要使用tensorflow来对图片进行离线预处理,但是使用sess.run时代码越来越慢,最后几分钟才能处理一张图片,这可怎么能行,我的数据集有数万张图片...... 原始代码 def ...

  7. qt for Android解决全面屏手机安装程序出现下部黑边显示不全问题

    本来以为这个问题还要调用java类什么的才能解决,之前 发现这个问题也是没有解决,直接在手机的设置中,全面屏,设置程序全面屏显示,但是这样带来的体验就很不好,一个新用户用全面屏手机安装了你的app,然 ...

  8. Win10如何找出占用硬盘空间大的文件及怎么删除

    WIndows10系统使用时间长了后,会发现硬盘空间会越来越小,那么到底是哪些文件占用了我们的硬盘空间,我们又怎么删除这些临时文件呢?下面我们就来看一下操作方法吧. 工具/原料 Windows10 方 ...

  9. python运行过程中占用内存越来越大_Python 程序运行时CPU和内存高解决思路

    这篇文章是基于上篇文章的续章~ 一台机器要部署很多爬虫,每天定时执行的情况下,服务器CPU和内存占比较高的情况出现后 模拟一份代码,进行分析. 一个简单的爬虫程序,爬取10页数据共计150条,每天定时 ...

  10. Ubuntu fcitx输入法占用内存越来越大(超过1G)

    文章目录 问题 解决办法 更改为百度服务器 卸载附加组件 问题 最近在Ubuntu下打开系统监视器gnome-system-monitor发现fcitx输入法占用内存竟然要1-2G 解决办法 由于fc ...

最新文章

  1. 深度盘点Python11个主流框架:Pandas、Django、Matplotlib、Numpy、PyTorch......
  2. .net安装_无需安装Python,就可以在.NET里调用Python库
  3. 用json来组织数据,用IGame导出模型
  4. Windows PE第6章 栈与重定位表
  5. 运行pyspider时出现 : ImportError: cannot import name ‘ContextVar‘
  6. hive简介(大数据技术)
  7. C语言灵魂——算法!
  8. 【Python】绘制二维散点图
  9. iOS 音频视频图像合成那点事
  10. pytest测试框架(三)---使用allure描述测试用例
  11. Web前端工作笔记009---IE8兼容_new Date兼容方法
  12. 【信息融合】基于matlab BP神经网络和DS证据理论不确定性信息融合问题【含Matlab源码 2112期】
  13. js 如何实现点击一键复制文本
  14. Aria2Android 免root,安卓不需root用aria2搭建NAS方法
  15. 土豆服务器延期修复,Uplay更新失败解决方法 教你对付土豆服务器!
  16. IDEA项目上传码云报错:Push rejected: Push to origin/master was rejected
  17. QGraphicsView使用详解
  18. 开天辟地第一人---盘古
  19. 基于bp神经网络的pid算法,神经网络pid控制器设计
  20. Kubernetes基本概念和术语

热门文章

  1. 通灵学院|游戏设计研习9:游戏社群★(1500字)
  2. 计算机nemurt.dll,DDD~领域事件中使用分布式事务
  3. 如何使windows系统环境变量的改变即时生效
  4. matlab怎么解非满秩矩阵,在numpy或matlab中由满秩非方矩阵求可逆方阵
  5. PHP苹果内购验证步骤
  6. 网络传输大端序_大端 小端和网络字节序说明
  7. python解析HL7协议多方式对比
  8. python读取定位_如何使用python定位和读取Data Matrix代码
  9. 微信语音功能模块的测试点
  10. swoole安装教程人人商城互动直播通信服务启用教程