Migrate an existing system from RHEL6 or SL6 to CentOS 6
To migrate from RHEL6 to CentOS 6 fetch the latest versions of the following packages for your
architecture and put them in a temporary directory. Rather than fetching packages with wget, as
shown below, the CentOS-6 installation media can be mounted and packages installed from it.
For CentOS 6.2 x86_64
mkdir TMP
yum remove rhnlib abrt-plugin-bugzilla redhat-release-notes*
rpm -e --nodeps redhat-release redhat-indexhtml
cd TMP
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-release-6-
2.el6.centos.7.x86_64.rpm
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/centos-indexhtml-6-
1.el6.centos.noarch.rpm
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-3.2.29-
22.el6.centos.noarch.rpm
wget http://mirror.centos.org/centos/6/os/x86_64/Packages/yum-plugin-
fastestmirror-1.1.30-10.el6.noarch.rpm
rpm -Uvh *.rpm
cd ..
rm -rf TMP
yum clean all
yum upgrade
For CentOS 6.2 i386 only the wget lines change:
wget http://mirror.centos.org/centos/6/os/i386/Packages/centos-release-6-
2.el6.centos.7.i686.rpm
wget http://mirror.centos.org/centos/6/os/i386/Packages/centos-indexhtml-6-
1.el6.centos.noarch.rpm
wget http://mirror.centos.org/centos/6/os/i386/Packages/yum-3.2.29-
22.el6.centos.noarch.rpm
wget http://mirror.centos.org/centos/6/os/i386/Packages/yum-plugin-
fastestmirror-1.1.30-10.el6.noarch.rpm
To migrate from Scientific Linux 6 the only change is that the "rpm -e" line becomes
rpm -e --nodeps sl-release sl-indexhtml
Additional changes for SL - The following will find some SL-specific packages:
rpm -qa | grep ^sl-
rpm -qa | grep SL_
These can be removed by (for instance):
rpm -e --nodeps sl-bookmarks sl-release-notes yum-conf-sl6x SL_desktop_tweaks
One might want to download and add a few more look-and-feel items, or load them from the
CentOS DVD:
rpm -Uvh redhat-bookmarks-6-1.el6.centos.noarch.rpm redhat-logos-60.0.14-
10.el6.centos.noarch.rpm \
redhat-menus-14.0.0-3.el6.noarch.rpm redhat-rpm-config-9.0.3-
34.el6.noarch.rpm
After the above, and updating, then you may want to see what additional SL packages you have:
rpm -qa --qf "%{VENDOR} \n" | sort | uniq
will show all the vendor tags for installed packages. Then
rpm -qa --qf "%{NAME} %{VENDOR} \n" | grep "Scientific Linux" | cut -d ' ' -f
1 | sort
will show remaining SL packages. It is probably not strictly necessary, but you could "purify"
the system by
yum reinstall $(rpm -qa --qf "%{NAME} %{VENDOR} \n" | grep "Scientific Linux"
| cut -d ' ' -f 1 | sort)
You may find some packages do not have CentOS equivalents as SL ships packages that CentOS
does not. Repeat the previous rpm query to see what is left over.
Procedures should be similar for other closely-related distributions.