The "rpm -F" command may ignore architecture variants of packages in Red Hat Enterprise Linux 5 and 6
Issue
- For packages with two different architectures of the same package installed, we can only freshen the first. For example,
freetype
has two versions (i386 and x86_64). If we freshen the first (rpm -Fv
), we get an updated i386 version. However, a subsequent command (rpm -Fv
) to freshen the second architecture returns immediately (no error, return code 0). However, if we freshen both in the same command, the expected results occur.
In other words,rpm -Fv freetype-2.1.9-4.i386.rpm freetype-2.1.9-4.x86_64.rpmz
works, but:
rpm -Fv freetype-2.1.9-4.i386.rpm rpm -Fv freetype-2.1.9-4.x86_64.rpm
may not.
- When you have two architectures of the same package and do an
rpm -F
of two newer versions in a single command, it succeeds. However, if you do one architecture at a time (i.e. in 2 separate commands), the first will succeed but the second may fail due to the architecture being ignored and only checking the version. - An RPM package for an architecture that's not currently installed gets added by an
rpm -Fvh
command (in addition to the correct architecture's RPM being freshened)
Environment
- Red Hat Enterprise Linux 5 and 6
- rpm-4.4.2.3-18.el5
- rpm-4.8.0-12.el6
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.