我已经发布这个问题因为 CentOS 或 RedHat Linux VM 无法安装在 VirtualBox 或 VMWare Player 中。后者错误地指出我的计算机不支持要求(启用 Hyper-V 或设备凭据 Gard (DCG))。
我必须禁用 Hyper-V 才能正常运行,但我的处理器是 Intel i7-4790,根据英特尔网站,它支持英特尔虚拟化技术。
那么为什么我必须禁用它才能使虚拟机运行?
我感兴趣的是因为当我安装 Xamarin 时,它还抱怨缺少虚拟化的顺序,而虚拟化本应为手机模拟器提供更好的性能。
那么,有没有办法可以启用 Hyper-V 并继续运行虚拟机?它的全部目的不就是更好地运行虚拟机吗?
答案1
那么有没有什么方法可以启用 Hyper-V 并继续运行虚拟机?
是的,我们马上就讲到这一点。
它的全部目的不就是为了更好地运行虚拟机吗?
否。Hyper-V 是微软的虚拟机管理程序实现。 它竞争使用 VirtualBox 和 VMware 的虚拟机管理程序。只有当您实际使用基于 Hyper-V 的 VM 而不是 VirtualBox 或 VMware VM 时,Hyper-V 才能“更好地运行 VM”。
硬件虚拟化扩展的工作方式是,它们每次提供对一个虚拟机管理程序的独占访问。因此,您可以使用以下任一方式:只有一个、Hyper-V、VirtualBox 或 VMware。您可以运行多个虚拟机,但它们必须全部使用相同的虚拟机管理程序。
现在,这带来了一个问题,因为一旦启用 Hyper-V,它就会一直“运行”,而禁用它相对麻烦。此外,一些较新的 Windows 安全功能需要 Hyper-V 虚拟机管理程序运行。因此,微软所做的就是引入 Windows 虚拟机管理程序平台,该平台允许 VirtualBox 和 VMware VM 在 Hyper-V 虚拟机管理程序上运行,而不是在 VirtualBox 或 VMware 本机虚拟机管理程序上运行。
因此,不要:
- VMware Player/Workstation,运行于
- VMware 虚拟机管理程序运行于
- 硬件虚拟化扩展
你有:
- VMware Player/Workstation,运行于
- Windows Hypervisor Platform/Hyper-V,运行于
- 硬件虚拟化扩展
请注意,至少就 VMware 而言,在 Windows Hypervisor Platform 上运行的速度比原生 VMware 虚拟机管理程序要慢得多。如果您出于其他原因不需要 Hyper-V,那么目前最好还是使用特定的原生虚拟机管理程序。
看起来 Xamarin 运行在 Hyper-V 之上,因此您需要启用 Hyper-V。但这意味着 VirtualBox 和 VMware VM 的性能会受到影响,并且还需要启用 Windows Hypervisor Platform。
那么有没有什么方法可以启用 Hyper-V 并继续运行虚拟机?
借助 Windows Hypervisor 平台,是的。但这必须与 Hyper-V 本身分开启用,因为它被视为一个单独的功能:
另请注意VMware 知识库文章错误消息中提到,Windows 和 VMware 与 Windows Hypervisor Platform 配合使用的最低版本要求相当新 - 在撰写本文时,Windows 10 版本 2004 是支持的最低版本。请确保您至少满足这些版本要求。
Hyper-V 状态 | Windows 虚拟机管理程序平台状态 | 支持 VBox/VMware |
---|---|---|
已禁用 | 不适用 | 是的 |
已启用 | 已禁用 | 不 |
已启用 | 已启用 | 是的 |