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,
freetypehas 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.rpmzworks, but:
rpm -Fv freetype-2.1.9-4.i386.rpm rpm -Fv freetype-2.1.9-4.x86_64.rpmmay not.
- When you have two architectures of the same package and do an
rpm -Fof 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 -Fvhcommand (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 of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
