我正在尝试在 VirtualBox(使用 Vagrant 配置)中运行 Ubuntu 客户机,该客户机安装在 Win 2012 R2 Hyper V 主机内运行的 Win 8.1 客户机上。我在 Win 8.1 客户机上禁用了 Hyper V。启动 VirtualBox 客户机时收到“vt-x 不可用”消息。
我可以将 VirtualBox 嵌套在 Hyper V VM 中吗?
答案1
对于 Server 2012 R2 及更早版本,Hyper-V 不会向客户机公开 VT 扩展。这就是为什么您无法在 Hyper-V 内部运行 Hyper-V(或许多其他虚拟机管理程序)。
但是 Windows 10(从更新 1607 开始)、Server 2016 及更高版本支持嵌套虚拟化。这意味着您可以在 hyperV 虚拟机中使用 virtualbox 和 vagrant 来配置 virtual box 虚拟机。
您首先需要做的是通过 powershell 从主机工作站(服务器 2016 等)在目标虚拟机上启用虚拟化扩展:
Get-VM | where Name -eq "your_vm_name" | Set-VMProcessor -ExposeVirtualizationExtensions $true
信息:使用 vagrant 在 virtualbox 上配置虚拟机会占用大量资源。因此,请确保为您的“主机虚拟机”提供至少 12 GB 的 RAM 和 4 个虚拟 CPU(hyperv > 您的 vmachine > 设置 > 处理器 > 4 个 virt 处理器。并且..> 内存 > 设置为 16000 MB)。