Update RHEL5 to RHEL6

Officially Red Hat does not support updates from RHEL5 to RHEL6.

If you don’t care about support, or you are using Centos or ScientificLinux this is for you. But as always on the internet, I don’t give any warranties and when it breaks, you have to keep the pieces and don’t cry or sue! 🙂

Steps to update from RHEL5 to 6:

    • make backup!!!!!
    • install helpfull programm
       yum install yum-utils
    • make a backup, not only of your data but everything
    • get list of installed packages. Just in case with rpm -qa > rpm-qa
    • remove packages that create problems
      yum remove kmod-gnbd-xen kmod-gfs-xen \
      kernel-xen-devel kmod-cmirror-xen kernel-xen \
      unixODBC-kde OpenIPMI-python OpenIPMI-gui
    • remove kde because it creates problems, you can install it on RHEL6 again if needed:
      yum groupremove kde-desktop
    • remove multilib on x86_64 because most of the time it is not needed anyway:
      uname -a |grep x86_64 && yum remove *.i{3,4,5,6}86
    • check if there are problems before the upgrade to RHEL6
      • package-cleanup --problems

        sometimes you have to remove some packages with

        rpm -e --noscripts
    • boot from RHEL 6.1 CD with option:  upgradeany 
    • at first reboot boot into runlevel 1
    • cleanup inittab of everything except this line and change it to runlevel 3:
      • id:3:initdefault:
    • check that your yum-repofiles (/etc/yum*) are pointing only to RHEL6 repos!!!!!
rm -rf /var/cache/yum/*; yum clean all
  • remove abandon packages
    yum remove adjtimex agg alchemist am-utils apmd \
    aspell-af aspell-bg aspell-br aspell-ca aspell-cs aspell-cy \
    aspell-da aspell-de aspell-el aspell-en aspell-es aspell-fo \
    aspell-fr aspell-ga aspell-gd aspell-gl aspell-hr aspell-id \
    aspell-is aspell-it aspell-nl aspell-no aspell-pl aspell-pt \
    aspell-ru aspell-sl aspell-sr aspell-sv automake17 beecrypt \
    bitstream-vera-fonts bluez-gnome bluez-hcidump bogl \
    bootparamd booty cadaver cairo-java cdrtools chkfontpath \
    Cluster_Administration cman cmirror cmirror-kmod \
    compat-libcom_err compat-readline43 compat-slang conga \
    convmv crash-spu-commands dasher dejavu-lgc-fonts \
    Deployment_Guide desktop-backgrounds dhcdbd dhcpv6 \
    distcache dogtail eel2 elilo emacspeak epic eruby etherboot \
    exim exim-doc fbset fonts-arabic fonts-chinese fonts-hebrew \
    fonts-indic fonts-ISO8859-2 fonts-japanese fonts-KOI8-R \
    fonts-korean fonts-sinhala freeradius2 fribidi gcc44 \
    gdk-pixbuf gfs-kmod gfs-utils gftp gimp-print gjdoc glade2 \
    glib glib-java Global_File_System gnbd gnbd-kmod \
    gnome-applet-vm gnome-audio gnome-keyring-manager \
    gnome-mime-data gnome-mount gnome-netstatus gnome-nettool \
    gnome-spell gnome-volume-manager gnu-crypto gpart gphoto2 \
    gtk+ hfsutils htmlview hwbrowser ibmasm ibmasm-xinput \
    icon-slicer ifd-egate inn ipsec-tools ipv6calc irda-utils \
    jakarta-commons-fileupload jakarta-commons-launcher \
    jakarta-commons-modeler jakarta-commons-validator joe \
    joystick jpilot kcc kdbg kdeaddons kdewebdev kdnssd-avahi \
    ktune kudzu lam launchmail libbtctl libdhcp libFS \
    libgconf-java libglade-java libgnome-java libgtk-java \
    libpfm libsdp libsilc libspe2 libtermcap libunwind \
    libvte-java libXfontcache libXTrap lv lvm2-cluster \
    man-pages-da man-pages-de mikmod mockobjects mod_python \
    mozldap mpi-selector mx nedit nss_ldap ofed-docs \
    openCryptoki openib openssl097a pam_ccreds pam_smb \
    pdksh pfmon pkinit-nss postgresql84 prctl privoxy \
    procinfo psgml pvm pwlib PyQt pyspi python-elementtree \
    python-numeric qcairo qffmpeg qlvnictools qpixman qspice \
    rarpd redhat-artwork rhel-instnum rhpl rhpxl rng-utils \
    salinfo samba3x sblim scim scim-anthy scim-bridge \
    scim-chewing scim-chinese-standard scim-hangul scim-m17n \
    scim-pinyin scim-qtimm scim-sinhala scim-tables scribus slrn \
    specspo splint squirrelmail stardict statserial struts \
    switchdesk sysklogd system-config-bind system-config-boot \
    system-config-cluster system-config-display \
    system-config-httpd system-config-netboot system-config-nfs \
    system-config-rootpassword system-config-samba \
    system-config-soundcard system-switch-mail termcap tomcat5 \
    tux tvflash unifdef uucp Virtualization wdaemon xcdroast xen \
    xmlrpc xmlsec1 xorg-x11-drv-ark xorg-x11-drv-calcomp \
    xorg-x11-drv-chips xorg-x11-drv-citron xorg-x11-drv-cyrix \
    xorg-x11-drv-digitaledge xorg-x11-drv-dmc \
    xorg-x11-drv-dynapro xorg-x11-drv-elo2300 \
    xorg-x11-drv-jamstudio xorg-x11-drv-joystick \
    xorg-x11-drv-magellan xorg-x11-drv-magictouch \
    xorg-x11-drv-microtouch xorg-x11-drv-nsc xorg-x11-drv-palmax \
    xorg-x11-drv-s3 xorg-x11-drv-spaceorb xorg-x11-drv-summa \
    xorg-x11-drv-tek4957 xorg-x11-drv-tseng xorg-x11-drv-ur98 \
    xorg-x11-drv-vga xorg-x11-resutils xorg-x11-xfs \
    xorg-x11-xfwp xorg-x11-xsm xsri yum-updatesd zisofs-tools  \
    tclx-doc
  • remove old kernels
     yum remove kernel\*-2.6.18\*
  • there is a problem with lvm that are not automatically fixed:
     yum downgrade lvm2
  • device-mapper-event is broken as well
    rpm -e --nodeps device-mapper-event device-mapper
    yum install device-mapper-event
  • remove problematic packages:
     yum remove openoffice.org-langpack-sr_CS \
    java-1.5.0-ibm-accessibility \
    sblim-gather-provider-plugins-virt \
    sblim-gather-plugins-virt java-1.6.0-ibm-accessibility \
    yum-protect-packages.noarch
  • upgrade and downgrade (with –skip-broken) if needed:
     yum distribution-synchronization
  • upgrade if needed (–skip-broken can help here as well):
     yum update
  • check for programs that are not from RHEL6 an remove them:
    package-cleanup --orphans | xargs yum remove
  • remove all packages with el5 in the name (should be empty or a very small number):
     rpm -qa | grep el5 | xargs echo yum remove
  • check if all dep problems are fixed:
    package-cleanup --problems
This entry was posted in Enterprise Linux, Fedora, Linux and tagged . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *