Installing ubuntu 32bit 10.04 LTS
1. Sign up for an account at prgmr.com
2. when asked for a OS, say Ubuntu 9.10 (all though it really doesn't matter at this point)
3. sign into your dom0 (e.g. crock.prgmr.com) with your ssh key you've provided one thats set up
4. in the menu, make sure you switch to the i386 bootloader by pressing 6:
chris@chris-desktop:~$ ssh email@example.com Name ID Mem VCPUs State Time(s) nbv4 86 512 1 r----- 6186.1 Options for nbv4 1. console 2. create/start 3. shutdown 4. destroy/hard shutdown 5. reboot 6. swap i386/amd64 bootloaders (pvgrub) 7. exit press the number> 4 Connection to crock.prgmr.com closed.
5. Now connect back to crock, and this time shut down the server by selecting 4.
6. connect again, and now select 2 to restart the server.
7. when you boot up again, you'll be greeted with a grub menu. At the bottom there should be an option for an Ubuntu 10.04 installer, highlight that option and then press enter.
8. There will be a series of screens that will guide you through the installation process. You should use the default settings for most things. Prgmr uses an older version of grub that doesn't support ext4. Make sure your boot partition is not an ext4 partition, or you will not be able to boot your server.
9. Once the installation process has completed, it will try to boot into your newly installed ubuntu system, but it will most likely not work. If it does then congratulations! Otherwise, read on...
10. go back to the crock menu screen and shut down your server by selecting 4.
11. No restart the server with menu option 2.
12. you'll be greeted with a screen much like the one you used to select "Ubuntu 10.04 installer". This time you want to select "CentOS recovery"
13. Once it loads, enter "root" into the login prompt.
14. mount your Ubuntu drive so we can modify files on it:
# mount -n /dev/xvda1 /mnt
15. now we need to add a grub menu so we can boot up our Ubuntu system. But first, we need to get some information about our kernel. Type the following:
# ls /mnt/boot abi-2.6.32-22-generic-pae memtest86+.bin config-2.6.32-22-generic-pae System.map-2.6.32-22-generic-pae grub vmcoreinfo-2.6.32-22-generic-pae initrd.img-2.6.32-22-generic-pae vmlinuz-2.6.32-22-generic-pae
take note of whatever the filenames are in this directory listing, we'll use it later
16. Now create the grub menu
it should open an empty file. Inside that file, paste the following:
default=0 timeout=5 title Ubuntu lucid root (hd0,0) kernel /boot/XXX root=/dev/xvda1 ro initrd /boot/XXX title Ubuntu lucid single user root (hd0,0) kernel /boot/XXX root=/dev/xvda1 ro single initrd /boot/XXX
...replaxing the xxx's with the names of the files in the directory listing we made earlier. Note, kernal in this example would use vmlinuz-2.6.32-22-generic-pae and initrd would use initrd.img-2.6.32-22-generic-pae.
17. save and exit by typing [esc] :wq
18. type ctrl + ] to exit the CentOS recovery console
19. reconnect to the crock console and reboot your system.
20. On the first menu, select Use existing boot settings (or something to that effect), then select "Ubuntu lucid"
21. your server should work
(this tutorial was written from memory, so it may not be 100% accurate, fell free to edit it if something is wrong)