[Spacewalk-list] Packages with same name in different architectures

David Crim dacrim at gmail.com
Wed Oct 21 20:05:09 UTC 2009


I set up a Spacewalk 0.6 server and loaded the CentOS 5.3 i386 base
and update package repositories. Everything seemed to work great. Then
I added CentOS 5.3 x86_64 base and update package repositories. The
builds of the 64-bit systems failed.

The initial problem was complaints about not being able to get the
redhat-logos package, even though I could get a shell with Alt-F2 and
use wget to download the package it said wasn't available. After a lot
of poking around at the system, I noticed that since this package was
for noarch, Spacewalk was reporting that the same package file was
available from both the 32-bit and 64-bit repositories. The MD5sum of
the package was the correct one for 32-bit packages.

I deleted the 32-bit package from the 64-bit repo and forced an add of
the version from the 64-bit package and the base install continued
with out an issue. However, now that the system is built, it is
complaining about rpm errors and recommending running rpm --rebuilddb
when I run rhnreg_ks. I suspect that the fact that Spacewalk is
reporting that all of the .noarch.rpm and .i386.rpm packages in the
64-bit repo are the same ones in the 32-bit repo that I have installed
packages from the 32-bit install instead of the 64-bit install.

I tried deleting all the .noarch.rpm and .i386.rpm packages from the
64-bit repo and reloading with rhn_push, but they all still point at
the versions with the MD5sum of the 32-bit versions.  The packages
from the 64-bit install are in /var/satellite/redhat/1 under the
proper md5sum leading digits, but the web interface reports that the
64-bit repo is using the packages with the md5sums 32-bit packages.

Is there an easy way to be sure that the packages from the 64-bit
distribution are used even if they match the name of the 32-bit
version? I'd rather not have to go through each package individially
and force them like I did with redhat-logos.

Is there a better way to install the initial repo? I am not opposed to
deleting all the packages and reinstalling if I did something wrong
during the initial push. The command I used to install the packages
looked like:

rhnpush --channel=channel-label --server=http://localhost/APP \
        --dir=/var/distro-trees/path/to/install/DVD/image \
        --username=USERID --password=PASSWORD

Dave




More information about the Spacewalk-list mailing list