7

I have been trying all morning to find the right Ubuntu Server (12.04) ISO to use for installing an Ubuntu guest OS on my VBox VM.

Here are the relevant stats:

  • Host Machine: AMD 64-bit
  • Host OS: Ubuntu Desktop 11.04
  • VM OS: Linux
  • VM OS Version: Ubuntu
  • ISO downloaded and attempted: ubuntu-12.04-server-amd64.iso

When I try to start the VM I get a main menu, the first option reads Install Ubuntu. When I select that, I get an error message:

This kernel requires an x86-64 CPU, but only detected an i686 CPU. Unable to boot - please use a kernel appropriate for your CPU.

Edit: That message makes me think that I have a 32-bit machine but am trying to run a 64-bit ISO. I am confident that this is 64-bit, however, as uname -m produces x86-64 in the terminal...and executing lscpu produces:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
CPU(s):                2
Thread(s) per core:    1
Core(s) per socket:    2
CPU socket(s):         1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 23
Stepping:              10
CPU MHz:               1200.000
L1d cache:             32K
L1i cache:             32K
L2 cache:              1024K

Here's the kicker: I downloaded the ISO on a Windows machine, because my Ubuntu machine (the one running Ubuntu Desktop 11.04 and hosting the VM-to-be) has crummy network connection. So I downloaded to a Windows client, put the ISO on a flash drive, copied it over to my Ubuntu machine, and saved it locally. I'm wondering if the download page saw that I was trying to download from a Windows client and swapped out the x86-64 version for i686? Otherwise I downloaded the wrong ISO.

Can someone please tell me what the right ISO is? I thought for sure the AMD 64-bit version would be exactly what I needed.

2 Answers 2

9

Your ISO is probably the correct one. What you need to do is make sure you are setting up a 64bit Virtual Machine. From the VBox website (emphasis mine):

64-bit guests

VirtualBox supports 64-bit guest operating systems, even on 32-bit host operating systems, provided that the following conditions are met:

  1. You need a 64-bit processor with hardware virtualization support (see the section called “Hardware vs. software virtualization”).

  2. You must enable hardware virtualization for the particular VM for which you want 64-bit support; software virtualization is not supported for 64-bit VMs.

  3. If you want to use 64-bit guest support on a 32-bit host operating system, you must also select a 64-bit operating system for the particular VM. Since supporting 64 bits on 32-bit hosts incurs additional overhead, VirtualBox only enables this support upon explicit request.

    On 64-bit hosts (which typically come with hardware virtualization support), 64-bit guest operating systems are always supported regardless of settings, so you can simply install a 64-bit operating system in the guest.

Warning

On any host, you should enable the I/O APIC for virtual machines that you intend to use in 64-bit mode. This is especially true for 64-bit Windows VMs. See the section called “"Advanced" tab”. In addition, for 64-bit Windows guests, you should make sure that the VM uses the Intel networking device, since there is no 64-bit driver support for the AMD PCNet card; see the section called “Virtual networking hardware”.

If you use the "Create VM" wizard of the VirtualBox graphical user interface (see the section called “Creating your first virtual machine”), VirtualBox will automatically use the correct settings for each selected 64-bit operating system type.

So, just try creating a new Virtual Machine and select Ubuntu 64 as the OS. All the settings should be correctly configured by VirtualBox and you should be able to install with no problems.

4
  • Thanks @terdon (+1) - please see my comment under p0rkjello's answer - I have the same question for you! Thanks again!
    – pnongrata
    Aug 21, 2012 at 14:28
  • @zharvey No, you do not have an AMD processor. You are, however, on an x86_64 architecture. Apple and AMD were the first to come out with a 64bit system for personal computers. So, in the non mac world, amd64 was adopted for all 64bit architectures. x86_64 was later adopted to describe intel 64bit CPUs as well. The two names are essentially synonymous today.
    – terdon
    Aug 21, 2012 at 14:35
  • I don't get the third point "If you want to use 64-bit guest support on a 32-bit host operating system, you must also select a 64-bit operating system for the particular VM". you must also select a 64-bit operating system for the particular VM what do you mean by that ? Jul 19, 2013 at 7:59
  • @SuhailGupta that just means that you should install a 64bit operating system on your virtual machine.
    – terdon
    Jul 19, 2013 at 11:42
3

You can download from one of the mirrors directly. And yes ubuntu-12.04-server-amd64.iso is the correct 64bit version.

Perhaps you are running a 32bit base OS. Run uname -a to check the kernel version.
Below is an example of a 64bit output.

p0rkjello@de01u0001:~$ uname -a
Linux de01u0001 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

The output from an AMD system I own

p0rkjello@de01u0001:~$ lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                6
On-line CPU(s) list:   0-5
Thread(s) per core:    1
Core(s) per socket:    6
Socket(s):             1
NUMA node(s):          1
Vendor ID:             AuthenticAMD
2
  • Thanks @p0rkjello (+1) - I am just noticing the Vendor ID: GenuineIntel in the lscpu output. Does that mean I'm not AMD like I thought? Thanks again!
    – pnongrata
    Aug 21, 2012 at 14:27
  • Correct. The output of Vendor ID would state AMD Or Intel.
    – p0rkjello
    Aug 21, 2012 at 14:34

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .