Yum Upgrade Fedora 8 to 10

Fedora 8 goes EOL next week, so it's time to upgrade. A yum upgrade is not the recommended way to upgrade, but it can work fine. The simpler a system is, the more likely this method is to succeed.

I just successfully upgraded my Fedora 8 text-only firewall and samba server using yum. Here are my notes from the process.

# Sat Jan  3 09:31:41 PST 2009
# Notes from yum upgrade of F8 server to F10
# See: http://fedoraproject.org/wiki/YumUpgradeFaq

mkdir -p /root/upgrade/f8-f10
cd  /root/upgrade/f8-f10
# gather info for potential recovery later
tar -C / -czf etc.tgz etc
rpm -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort > rpm.ls.f8
chkconfig --list > chkconfig.ls.f8
ifconfig > ifconfig
route -n > route-n
df -h > df-h
cp -p /boot/grub/grub.conf grub.conf.f8

# start the upgrade process
rpm -Uvh ftp://download.fedora.redhat.com/pub/fedora/linux/releases/10/Fedora/i386/os/Packages/fedora-release-*.noarch.rpm
mv /etc/yum.repos.d/fedora-updates.repo.rpmnew /etc/yum.repos.d/fedora-updates.repo
mv /etc/yum.repos.d/fedora.repo.rpmnew /etc/yum.repos.d/fedora.repo

yum clean all

# tried toupgrade some core packages first.
# i hit a conflict, so had to resolve that...
yum update rpm\* yum\*
#   file /usr/share/man/man5/dhcp-eval.5.gz from install of
# dhcp-4.0.0-33.fc10.i386 conflicts with file from package
# dhclient-3.0.6-12.fc8.i386
#   file /usr/share/man/man5/dhcp-options.5.gz from install of
# dhcp-4.0.0-33.fc10.i386 conflicts with file from package
# dhclient-3.0.6-12.fc8.i386
rpm -e dhclient

yum update rpm\* yum\*
# Install     26 Package(s)         
# Update     136 Package(s)         
# Remove       0 Package(s)         
# Total download size: 175 M

# WARNING: At this point
# named is off, fix named.conf error and start named so yum works
# vi is broken, so use nano

# replace packages removed for conflicts
yum install dhclient

yum upgrade
# Install     56 Package(s)
# Update     338 Package(s)             
# Remove       0 Package(s)             
# Total download size: 257 M

yum groupupdate Base
# Install     59 Package(s)         
# Update       0 Package(s)         
# Remove       0 Package(s)         
# Total download size: 49 M

yum clean all

# make sure grub is installed on my boot device
grub-install /dev/sda

# gather some post upgrade data
rpm -qa --qf '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort > rpm.ls.f10

wc -l rpm.ls.f*
#  638 rpm.ls.f10
#  512 rpm.ls.f8

chkconfig --list > chkconfig.ls.f10
diff chkconfig.ls.f8 chkconfig.ls.f10|grep ':on'
#  NetworkManager    0:off   1:off   2:on    3:on    4:on    5:on    6:off
# > bluetooth         0:off   1:off   2:off   3:on    4:on    5:on    6:off
#  pcscd             0:off   1:off   2:on    3:on    4:on    5:on    6:off
# > portreserve       0:off   1:off   2:on    3:on    4:on    5:on    6:off
#  stinit            0:off   1:off   2:on    3:on    4:on    5:on    6:off

# turn off new stuff that i don't need or want
chkconfig NetworkManager off
chkconfig bluetooth off
chkconfig pcscd off

# adjust any changes in start order for daemons
pushd /etc/rc.d/init.d
for f in *; do /sbin/chkconfig $f resetpriorities; done
popd

# remove old pkgs no longer found in an active yum repository
for pkg in `package-cleanup --orphans|egrep -v '^Setting up yum'`; do
    echo "Removing $pkg";
    rpm -e $pkg;
done

It would also be good to look through rpm.ls.f10 and remove any packages you don't want or need.

Reboot. I recommend booting into single user the first time, just to reduce the variables for the trial run. Once things look ok, press ^D to logout and allow the system to finish booting to its default run level.

Good luck!

Tags:

Syndicate

Subscribe to Syndicate