Upgrading/Updating/Switching Linux Distros

2005-10-05 - James R. Williams Zavada - Draft

Major Distros: Slackware, Fedora, Debian, SuSe, Ubuntu, Mandrake/Mandriva

I. Overview

   Updating, Upgrading and Switching Distros is a trade-off between
   reliability/stability and convenience/new features.

   The difference between Updating, Upgrading, and Switching Distros:

   -> Updating -- upgrading packages of a specific Linux distro and version,
      ie. for security updates, bug fixes, feature adds, etc.

   -> Upgrading -- switching to a newer version of the same Linux distro, ie.
      going from Slackware 9 to Slackware 10, or RedHat 7.2 to 7.3.

   -> Switching -- using a different Linux distro, ie. going from Slackware
      to Debian

   -> Some Traditional SysAdmin Practices.

II. Updating (Safest and easiest to do, depending on distro & pkg mgmt)

   1) Practices:

      -> Make sure you have good backups!!!

      -> watch for config file changes

   2) Slackware and Older RedHat

      -> Mix of package management and traditional SysAdmin practice.

      -> Slackware: backup configs and remove old package, then install new

         o Slackware pkg mgmt:

           pkgtool - (TUI) Install/Remove packages
           upgradepkg - (Cmdline) Upgrade a package
             (upgradepkg [pkg_name])

      -> Older RedHat: pkg config files are backed up as *.rpmsave files

         o Older Redhat pkg mgmt:

            a. List current installed packages:

               rpm -qa | less

            b. Use your favourite mirror site and download
               updated packages to system.

            c. Update each package:

               rpm -U [package_file_name]

            d. Review all *.rpmsave files, and add configs back
               in accordingly.

   3) Open Forum - Other distros

III. Upgrading (Not so safe and not always so easy, depending on distro & pkg

   1) Practices:

      -> Make sure you have good backups!!!

      -> Only Upgrade one revision level at a time, don't skip!!!
         ie. from RedHat 6.1 to 6.2, not 6.1 to 7.3

   2) With many distros, boot from install disk, choose upgrade.

   3) Open Forum - Other distros

IV. Switching Distros (Forget about safety, you're wiping the old distro
    when you install the new one)

   -> Make good backups!!!

   -> Safest to install on new disk and mount old disk to
      add in configuration info.

   -> Best done when switching to a newer computer

V. Traditional SysAdmin Practices

   -> Old School:

      a. Make backups

      b. Go to Distro site

      c. Download updated pkgs

      d. Install updates

      e. Check for needed config changes

   -> New School:

      a. Run update tool (automatically updates installed pkgs)
         - Fedora, Debian


      b. Enable automatic update feature 
         - Novell SUSE

   -> Make good backups!!!

   -> Be prepared for significant downtime!!!

   -> Use separate filesystems for /home and /usr/local

   -> Symlink /usr/local to /home/local can save partitioning work

   -> Document customisations, and put as many as possible in /usr/local

   -> If possible, experiment on a test system first

   -> Only updates are done routinely.  Upgrades or Distro switches are
      done coincidentally with hardware upgrades (ie. moving to a new box).


Slackware Reference - http://www.slackbook.org/html/