Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

Okay, so heres my problem. I recently started migrating several services to individual VMs on my box, using VirtualBox 4.1.

I created a new VirtualBox VM with guest type "Ubuntu (64 Bit)". I've already done this before and it worked like a charm. I then installed unbutu server (12.04) from the exact same dvd image. All the time I thought that it should have installed x64.

I already put a few hours work into the new VM, migrating the webserver and mail system etc. Today I tried installing a x64 piece of software and it suddenly told me that it needed x64 and I had only i686.

I checked uname -a and this is what it gave me:

Linux hostname 3.2.0-29-generic-pae #46-Ubuntu SMP Fri Jul 27 17:25:43 UTC 2012 i686 i686 i386 GNU/Linux

Any guesses what went wrong? All the time I was thinking I had a x64 system.

Any way to move to a "real" x64?

I have a second VM on this host which is running x64 just fine ..

P.S.: grep --color=always -iw lm /proc/cpuinfo returns lm among the flags.

share|improve this question
    
"Any way to move to a real x64" - duplicate of askubuntu.com/questions/6176/… ? –  fossfreedom Sep 18 '12 at 9:26
    
yes might be, but the "real" question I have is, why didnt the installer install x64? How can I make sure that it really installs a x64 kernel? –  Seppo Sep 18 '12 at 9:33
1  
An x64 kernel will look like this: Linux projects-ext 2.6.32-41-server #91-Ubuntu SMP Wed Jun 13 11:58:56 UTC 2012 x86_64 GNU/Linux –  Gerald Schneider Sep 18 '12 at 10:29
add comment

2 Answers

It is not the Virtual Box software that decides which kernel architecture to install - it is the Ubuntu architecture version we downloaded. There is a box "Choose your flavour" to change from 64-bit to 32-bit on the official download page.

enter image description here

To be able to install a 64-bit OS we have to tell Virtual Box to emulate a 64-bit capable machine (which would be possible even on a 32-bit host OS when the CPU supports this). Of course we would then be able to install 32-bit Ubuntu on that 64-bit virtual machine (like in real life, and that is what you probably did) but we would not be able to install 64-bit Ubuntu on a 32-bit virtual machine.

share|improve this answer
1  
... the latest virtualbox does have support for running 64bit ubuntu on 32bit host - I do this with my 11.10 32bit ubuntu running a 64bit 12.04 Ubuntu VM. –  fossfreedom Sep 18 '12 at 9:59
    
I double checked it: the version that I used is definetly ubuntu-12.04-server-amd64.iso –  Seppo Sep 18 '12 at 10:00
    
Apparently, the installer does not show which version it is about to install, is there a way to check it? –  Seppo Sep 18 '12 at 10:09
1  
To my knowledge the amd64 server DVD (cdimages.ubuntu.com/ubuntu-server/precise/daily/current) should not provide a 32-bit kernel. –  Takkat Sep 18 '12 at 10:11
    
This is weird - I checked the image that I downloaded from the official download page. I definetly checked "64 bit" back then and ended up with a file named: ubuntu-12.04-server-amd64.iso. I extracted the image and found all packages named i386 –  Seppo Sep 18 '12 at 10:32
show 1 more comment

To answer the difference between i686 and x64:

x64 specifies the architecture (64bit) while i686 specifies the processor generation. The "older" among us might remember the 80486 CPU by Intel, which was followed by the 80586 CPU which Intel called "Pentium" on the consumer market.

i686 specifies that this software will not run on 486 and 386 CPUs but only on Pentiums successors (and compatible, like AMD), most probably because it was compiled to use cpu flags these older processors lack. They still can be 32bit CPUs.

I guess this Wikipedia page is a good start for details.

share|improve this answer
    
Thank you for the clarification, though I know the difference and was wondering what the exact difference was regarding the kernel. –  Seppo Sep 18 '12 at 10:29
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.