A lesson learned: Always upgrade Fedora with a respin CD

November 20, 2007

I spent a large part of today upgrading my office workstation from Fedora Core 6 to Fedora 7 (I wanted to go straight to Fedora 8, but either I am too impatient or the Fedora 8 installer stalled during dependency resolution). As usual, I did this by sticking in the Fedora 7 DVD and telling it to do an upgrade install.

The problem with this is simple: an up to date machine running an old Fedora can have more recent versions of packages than are on the install media for the newer Fedora.

(For example, Fedora 7 shipped with RPM version 4.4.2; a current Fedora Core 6 machine has RPM version 4.4.2.1.)

Because such RPMs are 'more recent' than the packages on Fedora 7's install DVD, the Fedora installer did not update them, despite the fact that they were packages for Fedora Core 6. The result left my system in a peculiar and awkward half-updated state, with some packages built for Fedora Core 6 and others built for Fedora 7, and any number of things broke (including yum).

(I eventually managed to dig myself out of this. It was enlivened by the fact that any number of Fedora 7 RPMs haven't been rebuilt since Fedora Core 6, and so still have .fc6 in their version numbers.)

Ultimately this happens because Fedora freezes their DVD images when the release is made, and feels free to update previous releases with current package versions (instead of freezing the version and backporting fixes). As time goes by, this allows an old release to leapfrog the version of the package that is burned into the DVD image. I believe that the way around this is to upgrade using a Fedora 7 re-spin from the Fedora Unity people; these are updated DVD images that include the current updates, and so most everything on them should be seen as 'more recent' than your current packages.

(Unfortunately my machine is an x86_64 one, and x86_64 re-spins are 'currently provided for testing only'. A very large download over DSL may be in my home machine's future.)

The overall moral I draw from this is that it is now necessary to upgrade to each new Fedora release more or less when it comes out, instead of sitting on the upgrade until I feel like it.

(Alternately, the moral is that I should stop being afraid to do upgrades with yum. A yum based upgrade avoids this problem because it draws packages from both the baseline release repository and the updates repository.)

Written on 20 November 2007.
« What IPsec being mandatory in IPv6 really means
Linux virtual terminals and the X server »

Page tools: View Source, Add Comment.
Search:
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Tue Nov 20 23:24:47 2007
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.