I tried running Ubuntu Server on VirtualBox today and it wouldn’t boot: it just said that the “CPU is too old for this kernel.” Well, I know I have a modern CPU and a modern piece of virtualization software. In addition, the installer ran fine, so what could have gone wrong?
I did some research. Apparently, Ubuntu Server uses a special kernel that requires a CPU with PAE (Physical Address Extension), but the VirtualBox CPU doesn’t support PAE. Uh-oh. So I got out my installation CD again, booted into a recovery console shell, and replaced the kernel:
apt-get update
apt-get install linux-generic
apt-get remove linux-server
After rebooting into the new kernel, the system operated normally.
Sept 7, 2008: As indicated by koomba7, VirtualBox now has a PAE option that can be enabled.



