So I’ve been messing with python again lately and have been having fun writing some scripts to do tedious maintenance on my MySQL and SQL Server installs. I’ve got a desktop running Ubuntu’s Jaunty Jackalope and once I got things working the way I wanted, I tried to copy all the scripts over to the work laptop. (Running Hardy Heron)

I ran into a problem trying to install pymssql in Hardy. I couldn’t find it in the repositories. That was weird, but possible. So after googling for a while and getting no where, I just decided to upgrade the laptop to Jaunty (figuring that I’d be able to install pymssql once I was running Jaunty)

I set about following the script I got from here: How to Upgrade Ubuntu 8.04 to Ubuntu 8.10. Knowing that I had two separate upgrades (Hardy -> Intrepid, Intrepid -> Jaunty) to do, I started the upgrade from Hardy to Intrepid first.

Well, about halfway through the upgrade failed. I don’t know what happened, but it looked like the wireless connection burped or something and only about half the packages downloaded. So I restarted it. After watching it for a while I thought that maybe doing this over a wireless connection wasn’t the best idea. So I Control-C’d the upgrade and hooked up the laptop to my router with a nice long cat5 cable. I felt pretty good about myself, because the downloads were moving a lot faster too.

Once the upgrade finished I restarted and noticed some weirdness. The boot screen started scrolling by and I could see things like “update failed” and “read-only filesystem”. Soon after I was looking at my desktop. Hmmm. Well, maybe some of the packages got corrupted during the two interruptions during the download. Figuring that the Jaunty upgrade would fix it, I started phase two.

Long story short – it didn’t. I wound up looking at a “read-only filesystem” with no access to the terminal from X. Booting into recovery mode and starting GDM manually undid the read-only part, but I still didn’t have a terminal (I kept getting something about a child process failing).

By this time it was late and I didn’t want to screw with it anymore, so I left it til this morning, whereupon I decided I didn’t want to mess with it then either. With the help of the recovery console, I was able to back up my home folder and I popped in a Jaunty install disk.

Twenty minutes later all was back to normal. Restoring my programs was easy and copying my documents back over was a breeze.

(NOTE: I recently had the occasion to reinstall Windows XP on my sister’s machine and I can tell you, without a doubt, that Microsoft needs to take a look at the Ubuntu install process. Ubuntu – yay! Windows – DAMN IT!)

So what did I learn from this?
1.) With big upgrades like this – always go wired! Wireless is too slow and the possibility of error is too great.
2.) Only upgrade to one release at a time. If you want to go more than one release, it’s easier to back things up and start fresh.

But, in the end, it was fun and I learned something so… cool.

P.S. Against my own advice, I recently upgraded a server machine at home from Hardy to Jaunty with no problems using the same steps I attempted above. The only difference? The machine was wired the whole time. Maybe that really was the whole problem?