This is an old revision of the document!
Upgrading CentOS 32bit 4.x to 32bit 5.x
We have found the following guide very useful in this process. This works for both dedicated servers as well as VPS nodes:
Setting file attributes
chattr -Ria /bin chattr -Ria /etc chattr -Ria /etc chattr -Ria /include chattr -Ria /lib chattr -Ria /sbin chattr -Ria /usr/bin chattr -Ria /usr/include chattr -Ria /usr/lib chattr -Ria /usr/libexec chattr -Ria /usr/local/bin chattr -Ria /usr/local/include chattr -Ria /usr/local/lib chattr -Ria /usr/local/sbin chattr -Ria /usr/sbin chattr -Ria /usr/share chattr -Ria /var/lib chattr -Ria /var/lock chattr -Ria /var/log chattr -Ria /var/run chattr -Ria /var/spool/repackage
Ensure CentOS 4.x is up-to-date
rpm --rebuilddb yum clean all yum update rm -f /var/lib/rpm/__db.00* rpm --rebuilddb
Remove and Install Packages
rpm -e lftp syslinux mkbootdisk rpm -Uvh http://vault.centos.org/5.0/os/i386/CentOS/centos-release-5-0.0.el5.centos.2.i386.rpm http://vault.centos.org/5.0/os/i386/CentOS/centos-release-notes-5.0.0-2.i386.rpm mv /etc/yum.repos.d/CentOS-Base.repo.rpmnew /etc/yum.repos.d/CentOS-Base.repo
Install CentOS5 Kernel
rpm -ivh --nodeps http://vault.centos.org/5.0/os/i386/CentOS/kernel-2.6.18-8.el5.i686.rpm http://vault.centos.org/5.0/os/i386/CentOS/kernel-devel-2.6.18-8.el5.i686.rpm
Remove Old Kernels
rpm -e $(rpm -qa | grep kernel | grep -v 2.6.18 | tr '\n' ' ') --nodeps
Remaining Packages Upgrade
rpm -e --justdb python-elementtree --nodeps yum clean all yum upgrade
Fix RPM System
rm -f /var/lib/rpm/__db.00* rpm --rebuilddb rpm -Uvh --force http://vault.centos.org/5.0/os/i386/CentOS/python-elementtree-1.2.6-5.i386.rpm http://vault.centos.org/5.0/os/i386/CentOS/python-sqlite-1.1.7-1.2.1.i386.rpm yum clean all
One Last Upgrade
yum upgrade
cPanel Servers Only
You must remove the filesystem package from the excludes line in /etc/yum.conf
rm -f /var/cpanel/sysinfo.config /scripts/gensysinfo /scripts/upcp --force /scripts/mysqlup --force /scripts/easyapache --build