Server Migration: Ubuntu 8.04 LTS 32 bit to Ubuntu 9.10 64 bit ... a tale of woe

Changing from 8.04 LTS to 9.10 server proved to be a non-trivial task. Some problems were due to certain limitations due to the hardware, others were very surprising. This post discusses the issues that came up.
 
Introduction:
For our Linux testing environments, we have been using Ubuntu Linux. I have prefered using Ubuntu since I switched from Debian a number of years ago.
Ubuntu has a lot going for it. Unlike other distributions, it does have a corporation backing it. Yes there are others like Redhat, but for the most part the Ubuntu distribution is full featured and best yet, regularly updated.
I have worked on another Unix environment, Solaris, but administering in that environment is a lot more difficult. E.g., having to fsck from the console after a power outage is a pain for the administrator, and if it is running a service like imap the delay in restarting the service makes your users very unhappy. Patching and updateing software is no fun. It really takes a lot of smarts to do things right.
Ubuntu use the Apt package manager and GRUB boot manager. Both are wonderful at what they do. Apt allows you to simply find the right packages you need for a service or application. E.g., to install apache2 you would type:
% apt-get install apache2
all dependecies are installed as well. Updating is quick and easy:
% apt-get update
% apt-get upgrade
Since administration is not my main job, I love having a simple system to do updates.
 
Ubuntu Releases:
Ubuntu typically releases in 6 month cycles (with 18 month critical support)  and they promise 3 years long term support (LTS) releases such as 8.04.
Because of this, we chose 8.04 LTS as the server to use one of the gamelab server machines ... a Dell XPS 600 (P4, 2G RAM, 2 160GB SATA, stripped RAID - nVidia nforce). This allowed for a number of useful experiments on Openmeetings, Red5, and Opsview. I planned to continue with this release until 10.04 LTS which is due April 29, 2010.
8.04 LTS is now very long in the tooth and we like to run OpenSim on the server. The problem is that the OpenSim distro we would like is the current diva dist r12274 and that requires Mono 2.4.2 or later. Unfortunately 8.04  does not get the lastest mono ... observe the Mono statement:
The following official versions are available in the standard Ubuntu repositories:

Ubuntu Dapper (6.06 LTS):
1.1.13.6

Ubuntu Hardy (8.04 LTS):
1.2.6

Ubuntu Intrepid (8.10):
1.9.1

Ubuntu Jaunty (9.04):
2.0.1

Ubuntu Karmic (9.10):
2.4.2.3

Ubuntu Lucid (10.04 LTS):
2.4 branch snapshot

 
A second problem came up when ICS support reported we were using an older version of php5 and they would block the server unless we patched it.
 
Updating the Server:
I decided to update the server to 9.10 and change the RAID level to 1 from 0.
Under normal releases (e.g., 9.01 to 9.10), you can jump to a newer release via a simple commands:
% apt-get install update-manager-core
% do-release-upgrade
This does not work with 8.0 LTS to 9.10 which is the current release. There will be one for 8.04 to 10.04 ...
% do-release-upgrade -d
So I downloaded 9.10 server.
 
Issues:
1. 9.10 server is now 64-bit.
2. file system is now ext4 as opposed to ext3
3. The Dell XPS 600 BIOS was old, A02 and I could not update to the latest due to the fact that the BIOS loader runs on Windows.
4. Grub error 5
5. Grub error 2
6. BIOS boot error
7. bootable partitions
8.