VisualBox报VT-x is disabled in the BIOS. (VERR_VMX_MSR_VMXON_DISABLED). 原因很简单,过程很波折

写在前面:

适逢抗战胜利70周年,身边的朋友们都趁着三天小长假旅游的旅游、潇洒的潇洒去了,对于我这个孤独的宅来说,放假是最无聊的事,基本就是无聊的躺在床上,刷刷微博、刷刷朋友圈、再刷刷QQ空间,看看他们在网上的各种晒、点点攒再评一评,最后再刷刷新闻,基本上就打发了大部分时间。当没得可刷了之后,就懒散地爬起来,打开电脑开始撸撸代码,逛逛博客。

前段时间基友推荐给我一款Android模拟器——Genymotion,于是我便下载安装了一个集成了VisualBox的安装包,再用Android Studio的插件调用,果然立刻就爱上了,可以配置模拟器参数,如屏幕分辨率、内存大小、CPU数量,轻松下载、部署最新的Genymotion虚拟设备,而且还可以同时运行多个安卓版本。实际上它应该是一个虚拟机,而不能叫做模拟器了。

问题及解决:

由于个人闲的蛋疼,昨天在VisualBox上面配置了一个CentOS服务器,一切都很顺利,看看时间已是深夜1点多,于是不舍地关了电脑上床撸觉。然而问题马上就找上门了,由于客户约了晚上谈谈项目的需求,于是早上起来准备看看安卓,当我打开AS调用Genymotion的时候,却怎么也打不开,一直提示Genymotion虚拟设备启动失败:

 

看提示是VisualBox无法启动,于是直接手动启动VisualBox,直接在VisualBox里启动安卓虚拟机,果然启动不了:

问题又来了,我电脑的BIOS的Intel虚拟化明明是开启的,难道是昨天装CentOS改了BIOS?(虽然这不太可能),还是重启了电脑进BIOS查看了一下,是开启的状态,以防万一我先禁止了然后又启用,再F10保存重启。但这并没什么卵用。于是在网上搜啊搜,这个问题貌似很多人都出现过,网上一大堆,按照网上的说法试了几个:

http://bbs.ednchina.com/BLOG_ARTICLE_3026963.HTM

按照这个网友的说法我检查了下自己的虚拟机配置,已经是virtualBox Host-Only Ethernet Adapter了,并不适用我的情况。

http://blog.sina.com.cn/s/blog_670445240101mtza.html

按照这个网友的说法,我卸载了Genymotion和VisualBox重新安装又重新配置,试了不行,然后又卸载并且把注册表C盘残留文件等相关的都删除,问题依旧。

http://blog.csdn.net/yasi_xi/article/details/21320785

看了这个网友的说法,给了我启示,我进到VisualBox里检查了下设置里的硬件加速选项,果然这个选项是灰色的没有选中并且不可编辑,但是上面这个网友的是可编辑的。问题肯定出在这,因为我的硬件加速选项里的VT-x不能正常启动,因此会启动不了。最终在一个老外的网站上看到了比较全面的分析:

http://stackoverflow.com/questions/20647610/verr-vmx-msr-vmxon-disabled-when-starting-an-image-from-oracle-virtual-box

按照他说的,我的电脑确实是i3的处理器,并且系统是64位的,他的描述完全吻合,于是开始查程序日志,确实是如此。那么到底是什么原因造成的呢?我之前还用的顺利,怎么突然就不行了?最终发现了问题根源,很脑残,也很无语。竟然是我装的360搞得鬼,360有个核晶防护的功能,当程序需要运行虚拟化技术的时候,它为了硬件的稳定性会临时关闭该技术,那肯定就不能运行了啊,于是果断退出了360,再配置,OK成功了!(蛋疼!)。设置了下360,然后新建了个测试AS项目,又可以愉快的玩耍了!

 

结束语:

看看时间,下午一点半了,假期就这样过去了一半。本人水平有限,写下来只是自己学习过程中的一点点总结,也分享给大家娱乐娱乐,欢迎拍砖~~

 

posted @ 2015-09-04 15:15  maxest  阅读(29012)  评论(0编辑  收藏  举报