Upgrade Centos 4.7 to 5.3.

August 9th, 2009 by Andrea Matesi 1744 Views

I'm used to Ubuntu and I appreciate its funny sudo apt-get goodness, but for some reasons (spoiler: new job), I got involved with CentOS administration.

After learning some yum quirks (if you're used to apt-get and dpkg, believe me, it's easy!), I was given the task to migrate a 32 bit CentOS 4.7 Final install to CentOS 5.3.

Some useful yum commands I learned:

  • yum install package
  • yum remove package
  • yum clean all

For the migration task, I followed these guidelines: http://wiki.centos.org/HowTos/MigrationGuide/ServerCD_4.4_to_5

I can confirm it worked, except some expected, minor issues, solved by using some sanity. To manually download my packages, I choose a local italian mirror (the garr mirror - ftp://mi.mirror.garr.it/pub/1/centos/5.3/os/i386/CentOS/).

I'm not in the mood for a step-by-step howto (too busy ATM, just follow the wiki over there...), but here are some tips, notes and issues I encountered during the process and how I overcame them.

Follow the wiki guidelines, at the section:

- remove 2.6.9 bits

rpm -e kernel-2.6.9-42.EL kernel-devel-2.6.9-42.EL kernel-doc-2.6.9-42.EL

make sure you remove ALL 2.6.9x kernel iterations. To know how many kernel iterations you have, just type:

rpm -qa | grep kernel

then, when launching your rpm -e command, make sure you choose ALL kernel-2.6.9X, kernel-devel-2.6.9x and kernel-doc-2.6.9x instances.

Over time, and depending on the server role, kernel revisions may add up (on mine, there were almost 17 instances), so, when I launched the remove command, I (wrongly) thought it was kinda crashy since it took my prompt. I was pretty tempted to stop the process with CTRL+C, but before doing so, I opened another ssh session (BEWARE: make sure you have physical server access), and launched "top". I saw some activity [by the rpm command himself], so I decided to leave it running and I switched doing something else; ~20 min. later I was given my bash prompt back.


Another source of concern was when dealing with yum, repos and rpm. I experienced some broken dependencies, some missing libs and some unsatisfied python deps, so I happened to remove the old versions (el4) and installed the new ones.Too bad that, when removing old packages, I ended up on a strange situation: I found myself removing sqlite. Since (probably, not so sure about that), the rpm Db is based on sqlite, I ended up on an inconsistent status, where I couldn't install nor remove anything(!), not with rpm commands neither with yum, so take care when/if playing with a critical system component like sqlite.



FYI, i'll post a very useful link, that can help you deal with sqlite and borked rpm db: http://www.raditha.com/blog/archives/001579.html

As always (at least, when dealing with linux...), YMMV: I wish you a happy CentOS migration!

Please refer to:

  • http://wiki.centos.org/HowTos/MigrationGuide/ServerCD_4.4_to_5
  • http://www.tocpcs.com/yum-install-centos-5-upgrade-from-centos-44-to-centos-5
  • http://www.raditha.com/blog/archives/001579.html

Posted in LINUX, System Administration | Comments Off on Upgrade Centos 4.7 to 5.3.