[Yum] Is this a FRB, Frequently Reported Bug?
Stephen Satchell
sysadmin at amhosting.com
Thu Dec 30 04:02:56 UTC 2004
I'm sorry if you have gotten this 381 times already, but on the long
shot that no one reported this one...
As part of a debug exercise, I'm in the process of building a brand
spanking new Red Hat 9 box from the CDs that I've been lovingly carrying
around all these years. My goal: load the system, then use Yum to
bring everything up to date. Well...
> [root at testing src]# yum update
> Gathering header information file(s) from server(s)
> Server: Red Hat Linux 9 - i386 - Base
> Server: Red Hat Linux 9 - i386 - updates
> Finding updated packages
> Downloading needed headers
> No Packages Available for Update
> No actions to take
> [root at testing src]# yum list kernel
> Gathering header information file(s) from server(s)
> Server: Red Hat Linux 9 - i386 - Base
> Server: Red Hat Linux 9 - i386 - updates
> Finding updated packages
> Downloading needed headers
> Looking in Available Packages:
> Name Arch Version Repo
> --------------------------------------------------------------------------------
>
> Looking in Installed Packages:
> Name Arch Version Repo
> --------------------------------------------------------------------------------
> kernel i686 2.4.20-8 db
The problem is that the version for the most up-to-date kernel is
2.4.20-37. Oops. I guest that 8 is greater than 37 in this context.
I already know your next question!
> [root at testing src]# yum list yum
> Gathering header information file(s) from server(s)
> Server: Red Hat Linux 9 - i386 - Base
> Server: Red Hat Linux 9 - i386 - updates
> Finding updated packages
> Downloading needed headers
> Looking in Available Packages:
> Name Arch Version Repo
> --------------------------------------------------------------------------------
>
> Looking in Installed Packages:
> Name Arch Version Repo
> --------------------------------------------------------------------------------
> yum noarch 2.0.3-0.fdr.1.rh90 db
One good thing came out of this -- I've now been exposed to Python.
Something new to learn every day.
I ran into something like this when I wrote an RPM package manager.
What did I end up doing? I took any digit string and made it ten digits
long before making comparisons between names. So, for example, I would
expand the current Yum verion:
2.0.3-0.fdr.1.rh90
to
000000002.0000000000.0000000003-000000000.fdr.000000001.rh0000000090
(This assumes that the "rh90" wouldn't be removed in suffic analysis.
Somehow, I suspect that the string "fdr.1.rh90" would be removed, but I
don't know your naming standards.)
And that's one way you make sure that "8" is *not* greater than "37'.
It was easy using Perl's pattern matching. How would I do this in
Python? I leave that to you Python coders.
Respectfully,
Stephen Satchell
The Man In The Box (net/sys admin)
American Internet, Inc.
More information about the Yum
mailing list