如何在 VirtualBox 中运行 64 位客户机?

如何在 VirtualBox 中运行 64 位客户机?

我想要一个 Ubuntu 11.04 64 位测试环境。当我尝试在 VirtualBox 中启动 Ubuntu 11.04 64 位安装 CD 时,VirtualBox 显示以下消息:

VT-x/AMD-V 硬件加速已启用,但无法运行。您的 64 位客户机将无法检测到 64 位 CPU,因此无法启动。

请确保您已在主机的 BIOS 中正确启用 VT-x/AMD-V。

我究竟做错了什么?

细节:

  • VBox日志ubuntu-测试.vbox, 和/proc/cpu信息
  • 内核:Linux aux 2.6.38-8-generic #42-Ubuntu SMP 2011 年 4 月 11 日星期一 03:31:24 UTC x86_64 x86_64 x86_64 GNU/Linux
  • BIOS 中的虚拟化设置设为已启用。

答案1

为了能够在 VirtualBox 中运行 64 位系统,您需要一个支持虚拟化的 CPU。AMD 将此功能称为 AMD-V,英特尔使用 VT-x。维基百科很好地解释了这一点。有几款 Pentium-4 CPU 能够运行 64 位操作系统,但不提供此 VT-x 技术。您可以通过以下方式检查您的系统...

$ egrep '(vmx|svm)' /proc/cpuinfo
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx cid cx16 xtpr lahf_lm
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx cid cx16 xtpr lahf_lm

如果您没有得到任何输出,则您无法在 VirtualBox 中以客户机身份运行 64 位操作系统。但不要忘记检查您的 BIOS 设置。您可能能够在计算机的 BIOS 中激活这些 AMD-V/VT-x 功能。

最后,VirtualBox 设置中有一个复选框。启动 VirtualBox,选择要运行 64 位操作系统的虚拟机,然后进入此虚拟机的设置。查找“设置 -> 系统 -> 加速”,并确保已激活“启用 VT-x/AMD-V”。

答案2

在创建客户机时,请确保在向导中选择了 Linux 发行版的 64 位版本。我遇到了同样的问题,但通过在发行版的“版本”中设置正确的选项解决了这个问题。

即使你从 64 位 ISO 映像启动,它也不会运行,直到我设置该选项(一般的->基本的->版本)。

然后您应该能够启用 VT-x 和 I/O Apic。

答案3

在 BIOS 中启用虚拟化。

如果仍然不起作用,请让机器关闭几分钟。

答案4

根据虚拟盒你应该:

  • 如果可能的话升级你的 BIOS
  • 删除 KVM 模块(Linux 主机)

3.1.4 将为 BIOS 损坏且无法更新的用户提供一种解决方法。将 VBOX_HWVIRTEX_IGNORE_SVM_IN_USE 环境变量设置为 true:

set VBOX_HWVIRTEX_IGNORE_SVM_IN_USE=true on Windows
export VBOX_HWVIRTEX_IGNORE_SVM_IN_USE=true on Linux 

这将告诉 VirtualBox 忽略 VERR_SVM_IN_USE 并继续使用 AMD-V。
请注意,如果您同时运行多个虚拟机管理程序,这是一种黑客行为并且很危险。

相关内容