由于学习的需要,早期安装的VMware Workstation无法启动之前的虚拟机,在启动时报以下错误:
最开始还选择了卸载重装,当时参考了这篇博主的文章彻底卸载VMware虚拟机的详细步骤。重新安装后依然于事无补。
在此记录一下排查错误时的思路:
- 如果主机具有Windows 10 20H1 build 19041.264 或更高版本,需要升级/更新到 Workstation 15.5.6 或更高版本。
有关更多详细信息,请参阅VMware Workstation 中 Windows 主机 VBS 支持的最低要求
- 如果主机运行的是Windows 10 1909 或更早版本,请在主机上禁用 Hyper-V 以解决此问题。
第一种思路 升级软件版本
首先需要查看自己设备运行的Windows 版本
按Windows 徽标键键+ R,并在“打开”框中键入“winver”,然后选择“确定”。 有关详细信息,请参阅以下内容: 依次选择“开始”按钮>“设置”>“系统”>“关于”。 在“设备规格”>“系统类型”下,查看你运行的Windows 是32 位还是64 位版本。
如果版本在Windows 10 20H1 build 19041.264 以上,可以在工作台中选择软件更新。
在帮助里面选择软件更新
更新了好久 锲而不舍的重新更新,中间也因为网络连接等其他问题失败了好几次。
之后会有这个更新的页面,这里需要将之前打开的VMware Workstation.exe进程关闭,也就是把打开的关于VMware Workstation的页面都关闭才可以继续更新。
更新之后再打开就可以了。
第二种思路 禁用 Hyper-V
建议备份数据并设置系统还原点作为安全措施。 Hyper-V 禁用后,以下功能将不再起作用
- 凭证防护/设备防护
- Windows沙箱
- 虚拟机平台
- WSL2
- 超V
验证基于虚拟化的安全性 (VBS) 是否已启用:
确保将“值”设置为“未启用”。
1.关闭Hyper-V
- 转到“打开或关闭 Windows 功能”
- 确保 Hyper-v 未勾选。
- 如果已勾选,请取消勾选并单击“确定”。
2.以管理员身份打开命令提示符窗口
- 运行“bcdedit /enum {当前}”
- 记下虚拟机管理程序启动类型,以防需要恢复
- 运行“bcdedit /set hypervisorlaunchtype off”禁用虚拟机管理程序执行命令后关闭命令提示符并重新启动系统。
现在我们应该能够在 Workstation 中启动虚拟机了。
关闭基于虚拟化的安全性的过程:
可以按照以下步骤关闭 Windows 10 家庭版和专业版基于虚拟化的安全性:
对于 Microsoft Windows 10 专业版及更高版本:
- 编辑组策略 (gpedit)
- 转至本地计算机策略 > 计算机配置 > 管理模板 > 系统
- 双击右侧的 Device Guard 将其打开。
- 双击“打开虚拟化安全”打开新窗口
- 它将是“未配置”,选择“禁用”并单击“确定”
- 关闭组策略编辑器。
- 重新启动系统
对于 Microsoft Windows 10 家庭版:
注意:此过程会修改 Windows 注册表。在进行任何注册表修改之前,请确保您拥有注册表和虚拟机的最新且有效的备份。有关备份和还原注册表的详细信息,请参阅 Microsoft 知识库文章 256986。
- 打开注册表编辑器
- 转到 HKEY_LOCAL_MACHINE > 系统 > CurrentControlSet > 控制 > DeviceGuard
- 在右侧写入新密钥
A。右键单击 > 新建 > DWORD(32 位)值
b. 将此值命名为“EnableVirtualizationBasedSecurity”
默认为0,双击确认该值
4. 转到 HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > Lsa
5. 在右侧写入一个新密钥
A。右键单击 > 新建 > DWORD(32 位)值
b. 将此值命名为“LsaCfgFlags”
默认为0,双击确认该值
有关 Device Guard 或 Credential Guard 的更多信息,请参阅 Microsoft 文章管理 Windows Defender Credential Guard。
在找完错之后,一定要重新导入虚拟机文件,不然可能无法连接上网!!
参考文章