**This is an old revision of the document!**

How to Upgrade Ubuntu from Versions Prior to 10.04

This guide provides instructions on how to get your VPS upgraded from Ubuntu 8.04, 8.10, 9.04 or 9.10 to 10.04. There are some major configuration and system revisions between these versions so some care needs to be taken when upgrading else you will be left with a broken system! If this is the case, please contact support.

Pre-Upgrade Requirements

Please take heed of the important notes on each of the various version upgrade processes, as failing to do so will leave you with a broken system.

It is important that you must have selected the Linux 2.6 latest kernel inside your VPS Manager as the default kernel after upgrading before you boot, as versions of Ubuntu greater than 9.04 will not boot with the Linux 2.6 stable kernel.

Upgrade Instructions

Upgrading 8.04 LTS to 10.04

If you are running Ubuntu 8.04, the process is quite simple to upgrade. You do not need to go through any intermediary steps because 8.04 is an LTS build unlike 8.10 or 9.04.

  1. Login to the shell as root (or sudo the following commands).
  2. Install update-manager-core if it is not already installed:
    apt-get install update-manager-core
  3. Edit /etc/update-manager/release-upgrades and set Prompt=lts
  4. Launch the upgrade tool:
    do-release-upgrade --proposed
  5. Follow the on-screen instructions and let the upgrade complete. Select “no” to rebooting your server and proceed with the post 10.04 upgrade instructions below.

Upgrading 8.10 to 9.04

This upgrade requires three upgrade steps as you cannot directly go from 8.10 to 10.04 like you can with 8.04. Once you complete the below steps, you will be running 9.04, and you can then follow the upgrade instructions for that version (found below) to continue the upgrade process.

  1. Login to the shell as root (or sudo the following commands).
  2. Install update-manager-core if it is not already installed:
    apt-get install update-manager-core
  3. Launch the upgrade tool:
    do-release-upgrade
  4. Follow the on-screen instructions and let the upgrade complete. Select “no” to rebooting your server and instead reboot it through your VPS console. Then continue with the 9.04 upgrade steps below.

Upgrading 9.04 to 9.10

This upgrade requires two upgrade steps as you cannot directly go from 9.04 to 10.04 like you can with 8.04. Once you complete the below steps, you will be running 9.10, and you can then follow the 9.10 upgrade instructions to complete the upgrade process. Make sure you've read the Note above.

  1. Login to the shell as root (or sudo the following commands).
  2. Install update-manager-core if it is not already installed:
    apt-get install update-manager-core
  3. Launch the upgrade tool:
    do-release-upgrade
  4. Follow the on-screen instructions and let the upgrade complete. Select “no” to rebooting your server and instead reboot it through your VPS console. Then continue with the 10.04 upgrade steps below.

Upgrading 9.10 to 10.04

This process is quite similar to the 8.04 upgrade.

  1. Install update-manager-core if it is not already installed:
    apt-get install update-manager-core
  2. Edit /etc/update-manager/release-upgrades and set Prompt=normal
  3. Launch the upgrade tool:
    do-release-upgrade
  4. Follow the on-screen instructions and let the upgrade complete. Select “no” to rebooting your server and instead reboot it through your VPS console after completing the final steps below.

Post-10.04 Upgrade: Final Steps

This section is very important to complete otherwise you will be left with a broken system. Firstly, Ubuntu 10.04 uses a new /dev filesystem type that has to be explicitly defined in the fstab. So let's edit the file /etc/fstab and add the following line:

dev  /dev  devtmpfs  rw  0  0

Note: If you are upgrading from 8.10 or 9.04, you do not need to do this until you have reached 9.10. After the first (or second) upgrade cycle, you will be running 9.10. After that is complete, go back and complete the above modification.

Ubuntu 10.04 also uses a new console device called hvc0 which we have to configure the getty to listen on this device for user logins. We do this by creating the file /etc/init/hvc0.conf with the following contents:

This file may already exist, however the settings are improper for a Xen VPS environment. Please make the changes below even if you find the file already exists.

# hvc0 - getty
#
# This service maintains a getty on hvc0 from the point the system is
# started until it is shut down again.
start on stopped rc RUNLEVEL=[2345]
stop on runlevel [!2345]
respawn
exec /sbin/getty -L hvc0 9600 linux

Next, to prevent some nasty (although non-fatal) errors in the boot process, we disable some unnecessary services:

cd /etc/init/
for i in plymouth* ureadahead*; do mv $i $i.disabled; done

Once complete, you can now reboot your VPS and enjoy the latest version of Ubuntu!