wiki:manuals/Yum
Last modified 7 years ago Last modified on 11/12/10 14:35:13

Installing dCache with YUM

Please report problems and unexpected behavior to our support e-mail address.

Introduction

Yum is a tool for installing, updating, and removing packages and their dependencies on RPM-based systems.

Yum works from a series of repositories which are scanned and when a package is selected all its dependencies are resolved and all the required RPM's are installed. dCache maintains some repositories that complement Scientific Linux for the simplification of dCache dependency resolution and installation.

dCache can be installed using just dCache repositories and scientific linux repositories but for installation within glite the information provider does make use of Glite components.

Prerequisites

Before installing dCache, make sure you get a valid certificate from your CA for the particular hosts. A valid certificate consists of two small files :

  • hostcert.pem
  • hostkey.pem

Place those files in the /etc/grid-security directory and change permission as follows

chmod 400 hostkey.pem
chmod 644 hostcert.pem

Define the necessary repositories

While apt and yum both exist for SL4 just as they did for SL3, the default repository client for SL4/5 is now YUM we do not support the use of apt with SL4/SL5.

Yum is configured in by adding files to /etc/yum.repos.d/ for each repository. The format and content of the files content are shown on the following linked pages.

Applying the YUM settings

Then you must clear the yum meta data and then update YUM's cache.

yum clean all
yum update

Notes on Errors

In this document we use the variable "$basearch" on very rare occasions this has been evaluated and became “”, so the value for baseurl was wrong. Consequently yum couldn’t update properly. Please check this if you are having problems with the repository.

Target (meta) packages.

For yum users dCache provides a series of meta packages. These rpms contain no files, they only provide requirements for dependencies. For yum this allows a single command to install many rpms automatically.

Package Dependencies Repository
desy-SE_dcache_pool dcache pool nodes dcache.org
desy-SE_dcache_admin_postgres dcache admin nodes running PNFS postgresql and postgresql dcache.org
desy-SE_dcache_admin_gdbm dcache admin nodes running PNFS gdbm and postgresql dcache.org
desy-SE_dcache_info dcache node and BDII information system dcache.org and gLite31

Get the dCache software and install the node

A lot of stuff is fetched here. This should take a little bit less than 10 minutes.

For pool nodes :

yum install desy-SE_dcache_pool

For 64/32 bit admin nodes :

yum install desy-SE_dcache_admin_postgres

One node should also be an information provider if no node is selected dCacheConfigure.sh will default the information provider on the admin node. On the information provider node in addition to installing the above metapackage of your choice please also install the info system meta package.

For info system Glue nodes nodes (note only this metapackage depends upon Glite software):

yum install desy-SE_dcache_info

For sites in the LCG grid.

yum install lcg-CA lcg-vomscerts

Once dCache is installed you may wish to use dCacheConfigure.sh to configure dCache.

If your repositories are broken

Desy dCache creates our yum repositories out of site and then uses 'rsync' to update the public version of the server. This prevents errors when clients contact the server during update. Unfortunately this is not true for all repositories referenced on this wiki page.

If you get errors such as :

"http://glitesoft.cern.ch/EGEE/gLite/R3.1/glite-SE_dcache_admin_postgres/sl4/x86_64/RPMS.updates/glite-info-provider-ldap-1.1.0-1.noarch.rpm: [Errno 4] IOError: HTTP Error 404: Not Found
Trying other mirror.
Error: failure: RPMS.updates/glite-info-provider-ldap-1.1.0-1.noarch.rpm from glite31: [Errno 256] No more mirrors to try."

Then the repository was being updated at the time your yum client was running. The best solution is to wait a short time and issue the following command.

yum clean all

And then reissue the command that failed.

If you have to do this with a dCache repository we would be particularly interested to hear.