从 x86_64 转到 i686 cpu 后如何解决“正在加载初始 Ramdisk”挂起

Cha*_*son 8 ubuntu virtual-machine cpu-architecture

长话短说,我将 Ubuntu 12.04 64 位服务器设置为 VirtualBox (4.1.18) 的虚拟机。我将访客机从 AMD 芯片组(游戏机)迁移到 Intel Xeon(支持双处理器的服务器硬件),认为不会有任何问题。在服务器上设置好来宾机器后,我启动了来宾机器,却发现它挂在“正在加载初始 Ramdisk”处。

我安装了 Ubuntu 12.04 64 位设置 ISO 以查看是否可以查看任何日志,但在尝试从 ISO 启动时得到“内核需要 x86-64 CPU,但仅检测到 i686 CPU”。请记住,源计算机和目标计算机上的主机操作系统也是 Ubuntu 12.04 Server 64 位。这让我研究了来宾操作系统如何查看虚拟机中的 CPU 信息。我发现 CPU 信息在主机上与在源计算机上的来宾上看起来完全相同。

源 CPU 信息:

Processor - AMD Phenom™ II X4
Model - 925
OPN Tray - HDX925WFK4DGI
OPN PIB - HDX925WFGIBOX
Operating Mode 32 Bit - Yes
Operating Mode 64 Bit - Yes
Revision - C2
Base Speed (MHz) - 2800
Boost Speed (MHz)
Voltages - 0.850-1.425V 
Wattage - 95 W
AMD Virtualization Technology - Yes
L1 Cache Size (KB) - 128
L1 Cache Count - 4
L2 Cache Size (KB) - 512
L2 Cache Count - 4
L3 Cache Size (KB) - 6144
CMOS - 45nm SOI
Socket - AM3
AMD Business Class - No
Black Edition - No
Run Code Online (Sandbox Code Playgroud)

目标 CPU 信息:

3 Ghz Xeon - SL7ZF
Number of Cores - 1
Clock Speed - 3 GHz
L2 Cache - 2 MB
FSB Speed - 800 MHz
FSB Parity - Yes 
Instruction Set - 64-bit
Embedded Options Available - No
Lithography - 90 nm
Max TDP - 110 W
VID Voltage Range - 1.2875V-1.3875V
Physical Address Extensions - 32-bit
ECC Memory Supported - No
Processing Die Size - 135 mm2
Number of Processing Die Transistors - 169 million
Sockets Supported - PPGA604
Intel® Hyper-Threading Technology - No
Intel® Virtualization Technology (VT-x) - No
Intel® Trusted Execution Technology - No
Intel® 64 - Yes 
Idle States - Yes 
Run Code Online (Sandbox Code Playgroud)

我发现了一个类似的问题,但不确定这是否适用于我的情况。目标 cpu 显示支持 64 位指令。另一方面,我也读到英特尔的 64 位不是真正的64 位。

我是否从头开始重建我的来宾 VM?

Joe*_*Joe 2

您的问题可能不在于新处理器,而在于您的虚拟机设置。第一台配备 AMD 处理器的机器在处理器中内置了可视化支持,而第二台机器则没有。在虚拟机的设置中,系统 > 加速 > ... 下有一个用于硬件加速的选项,而 Intel 机器没有。

\n\n

在此输入图像描述

\n\n
"Intel\xc2\xae Virtualization Technology (VT-x) - No"\n
Run Code Online (Sandbox Code Playgroud)\n

  • 也许取消选中处理器选项卡下的“PAE/NX”选项可能会有所帮助。 (2认同)