不能共存原因分析
hyper-v 是一个type 1 hypervisor,当在 windows 中启用 hyper-v 时,windows 系统在硬件底层与 windows 应用层之间插入了一层 hyper-v,而原来的 windows 应用层则变成了一个运行在 hyper-v 上的虚拟机。
而 vmware workstation/player 使用一种被称为虚拟机监视器(virtual machine monitor,vmm)的机制,直接访问 cpu 内建的虚拟化功能,因此,它们本身不能在虚拟机环境中运行,换句话说,不支持嵌套虚拟化(nested virtualization)。
当 windows 启用 hyper-v 时,原来的 windows 变成了虚拟机环境,偏偏 vmware workstation/player 不能在虚拟机环境中运行,因此,运行vmware workstation/player 时会报错。
解决办法
把一个windows系统变成两个系统使用。一个是加载hyper-v的驱动服务的,而另个一个不加载。但系统还是一个,在我们启动时候我们会看到两个菜单,一个可以使用默认启动hyper-v,一个默认不启动hyper-v,而用vmware workstaiton的,那这个启动菜单怎么做呢?
第一步:以管理员身份打开命令提示符
第二步:输入以下命令,创建一个启动菜单,并记下{ } 中的一串代码。
第三步:输入以下命令,将此启动选项,关闭hyper-v功能
第四步:重新启动,此时可以在菜单中看到有两个启动选项
此时选择第一个选项,就可以使用hyper-v。第二个选项,就可以安装或使用vmware workstation了。现在我们可以随心所欲的使用不同的虚拟化环境了。
当然,如果想删除其中一个菜单选项的话,可以使用bcdedit命令来删除,还可以使用更简单的方式,你可以运行msconfig跳出图形界面来删除,以下截图
好了,就讲到这里,大家可以去试一下了。
其他解决方法:
方案一:检查程序和功能里的hyper-v服务是否关闭
如果看见打钩了就是开启状态,再点一下就关闭hyper-v服务了,这时候重启计算机·试一下如果这时候还不行你就要往下看了,就需要用到命令关闭了,人生建议:直接看下面使用命令关闭,省的麻烦
方案二:通过命令关闭hyper-v
通过命令关闭hyper-v(控制面板关闭hyper-v起不到决定性作用,要彻底关闭hyper-v)
以管理员身份运行windows powershell (管理员)(windows键+x)运行下面命令并重启电脑:
1. bcdedit /set hypervisorlaunchtype off
重点!!!
从 vmware workstation/player 15.5.5 版本开始,vmware 公司重构了 vmm机制,将 vmm 机制调整为在用户级别运行,不再直接访问硬件,而是通过利用微软的 windows hypervisor platform (whp) 的 api 来运行。从而彻底解决了 vmware workstation/player 与 hyper-v 的冲突问题。
所以需要:
将 windows 版本升级到 windows 10 20h1 或更高版本。将 vmware workstation/player 升级到 15.5.5 或更高版本,
具体安装虚拟机时注意:
在安装时,需要在如图所示的这一步勾选“自动安装 windows hypervisor platform (whp)”
如果报错“vmwareplayer 在此主机上不支持嵌套虚拟化。模块 monitormode 启动失败。未能启动虚拟机”,打开虚拟机的设置选项,找到“处理器”,去掉如图所示的三个选项前面的钩,点击“确定”就可以了。
以上就是vmware与hyper-v不兼容的解决方法的详细内容,更多关于vmware与hyper-v不兼容的资料请关注代码网其它相关文章!
发表评论