Because of the ‘GHOST’ scare, and the apparent lack of patched RPMs available for glibc for Fedora 19, I decided to bite the bullet and upgrade some VPSs to Fedora 21. However, instead of doing the sane thing (creating a fresh VPS and copying everything over) I decided to throw caution to the wind and upgrade the VPS in situ.

## Digital Ocean Control Panel = SCORE!

The thing that makes it bearable on Digital Ocean is that the control panel makes it easy to switch kernels (which would otherwise be grub on a standalone machine).

On the other hand, they don’t appear to have all the kernel version available, which means that a straight ‘upgrade’ needs to be fixed by installing a previous kernel (one which they do have on the drop-down list).

## Step 1 : Take a snapshot

(unless you are actually insane).

## Step 2 : Step through a helpful script

Check out this script.

However, I went through this step-by step, since running a clean yum after more than a year of bit-rot would be a surprise.

First, note the kernel that’s being run :

Then have a run through the first (uncontraversial) steps :

Then onto the upgrade proper :

This threw up a series of niggles…

### Step 2a : Fix dependency issues

Remember to reinstall its dependencies perl-DBI and perl-DBD-MySQL.

### Step 2b : yum runs into memory issues

This is a little disheartening, but the VPS is only 512Mb…
So, refusing to give up, shut down running processes :

### Step 2c : yum+presto runs into memory issues

The solution to this was just to repeatedly re-run yum --releasever=21 distro-sync - eventually all the RPMs get downloaded / expanded successfully (about 3 iterations required).

## Step 3 : Change kernel on control panel

According to script : same as currently running (fc19).

Power On (via the Panel) takes a while…

## Step 4 : Change to upgraded kernel on control panel

Ah - but here’s a problem : yum gave us kernel-3.18.5-201.fc21.x86_64, but the Panel only lists a previous version.

Therefore, need to install the previous version so that we can successfully switch to it.

So : Search for most recent one listed on DigitalOcean, by visiting the Koju build site, and going to the 3.18.3-201.fc21 page. There snag the three required RPMs :

Fortunately, that works.

Power On.

SUCCESS!

## Minor outstanding issue

The Digital Ocean panel still shows ‘Fedora Fedora 19 x64’ in the droplet’s header field (presumably because that’s the image it was originally created from).