YUM and the CCPCs

SLC4 uses YUM as its RPM package manager. YUM resolves dependencies and keeps packages up-to-date. YUM is organised around so-called repositories. The CCPCs use most of the CERN provided software served from the central CERN Linux servers. The LHCb specific software comes from a repository located at http://lhcb-daq.web.cern.ch/lhcb-daq/ccpc/slc4X/ccpc.

The LHCb Creditcard PCs are x486 compatible and diskless, this means that we cannot use some of the Pentium optimised packages provided centrally, nor can we accept updates provided by CERN, intended for normal disk-operated servers and desktop machines. This is ensured by the two special yum configuration files (yum.conf) described in the next section.

Setting up YUM for the CCPC server

As usual we assume that the root of your NFS tree for the CCPCs is under $CCPCROOT

First make sure yum is updated

chroot $CCPCROOT bash -c "yum -y update yum"
Then reconfigure yum
chroot $CCPCROOT bash -c "cd /etc; wget http://lhcb-daq.web.cern.ch/lhcb-daq/ccpc/slc4X/os/yum.conf"
chroot $CCPCROOT bash -c "cd /etc/yum.repos.d' wget http://lhcb-daq.web.cern.ch/lhcb-daq/ccpc/slc4X/os/ccpc.repo"
To be sure everything is clean and active try
chroot $CCPCROOT bash -c "yum -y clean all"
chroot $CCPCROOT bash -c "yum update"
Study the output of what yum update proposes to you. You should not see anything related to kernel or initscripts. If that's fine then simply press 'y' to commit the updates. When in doubt press 'enter' or 'N', and verify the download of the config files and the correct place in $CCPCROOT and if it still fails mail me.

Problem with RPM and nptl

There is a potential problem when updating rpm. The net result is that any update attempts by rpm and hence also by yum result in:
rpmdb: Berkeley DB library configured to support only DB_PRIVATE environments
error: db4 error(22) from dbenv->open: Invalid argument
error: cannot open Packages index using db3 - Invalid argument (22)
error: cannot open Packages database in /var/lib/rpm
Details can be found here.

To fix this, add the follwing lines to the $CCPCROOT/etc/rpm/macros (you might have to create that file first)

%__dbi_cdb  create cdb private mpool mp_mmapsize=16Mb mp_size=1Mb 
Then redo the yum updates as described above.
This page last updated 20-07-2006
Comments & questions to Niko Neufeld