【教程分享】解决VMware或者VirtualBox与Hyper
冲突问题表现
VMWare报不兼容错误http://cdn.u1.huluxia.com/g4/M01/FA/36/rBAAdl-eL12AKxWJAABA1R2K2Ks210.jpg
VirtualBox启动虚拟机系统时报错
Call to WHvSetupPartition failed!
问题产生原因
主动安装了Hyper-V相关程序或者启用了windows的应用沙盒
开启了WSL 2
解决方案
不论是哪种,都只要关闭Hyper-V相关设置,并卸载,就可以恢复。
1.使用Win+Q,搜索“启用或关闭 Windows 功能”。
http://cdn.u1.huluxia.com/g4/M01/FA/36/rBAAdl-eL16APAaKAABUOlu-ocw114.jpg
2.取消对“Hyper-V”和“Windows沙盒选项的勾选”,然后点击确定,等待处理完成。http://cdn.u1.huluxia.com/g4/M01/FA/36/rBAAdl-eL16AASZPAAEc4sJb078869.jpg
3.关机重新,问题解决...
等等,你以为问题到这里就解决了?那当然不可能!如果这么易于解决的话,那么就不会有下面这张图了~
http://cdn.u1.huluxia.com/g4/M01/FA/36/rBAAdl-eL1-Ac4AiAACaARqxNoc216.jpg
真的很难吗?其实,很简单,只需一句代码~~
bcdedit /set hypervisorlaunchtype off
在Powershell执行上面的代码,然后重启,就会惊喜的发现,VirtualBox和VMware就都可以使用了!
不过别高兴得太早,对于那些使用WSL 2的Win用户,你还需要把WSL降级到WSL 1,否则,你的windows子系统依然没有办法使用!
4.WSL2降级
在 PowerShell 中运行:
wsl --set-version 【Distro】 1
并确保将 【Distro】 替换为发行版的实际名称。 (你可以使用以下命令找到它们:wsl -l)。在这里最后的参数“1”表示为降级至WSL1版本。
(ps:如果是升级的话,只要把1改成2即可)
此时再次使用bash,即可启用WSL 1版本的windows子系统。
写在最后
这里还有个问题,就是Genymotion或者其他一些模拟器就算在关闭Hyper-V后,可能依然无法使用,这是由于它们的设置缓存导致的,在总设置里清理一下,重启电脑,就可以使用了。
其实,windows的沙盒功能对于那些不使用其他虚拟机的用户来说,非常友好,用完即毁,保护了原始工作系统不被损坏。但是,对于一些部分开发者来说(例如:Linux或者Android开发者来说),其实是不必要的。
不过,凡事都有利弊,使用工具的是人,工具是死的,人是活的,怎么方便怎么来~ 我了个去,顶了 好,很好,非常好! 求沙发 不错 支持一个了 呵呵,低调,低调! 确实不错,顶先 站位支持 鼎力支持!! 有空一起交流一下
页:
[1]
2