We are a software consultancy based in Berlin, Germany. We deliver
high quality web apps in short timespans.

Upstream Agile GmbH

Installing yum on CentOS 5.3

April 30, 2009 by thilo

We recently deployed an app on a VM with CentOS 5.3. To our delight, the packet manager yum wasn’t pre-installed. We spent some time to get it running. The Howto on http://eric.lubow.org/2008/misc/adding-yum-to-centos-5/ was a great help, but it was for CentOS 5.2. So this is an update to Eric’s blogpost.

You need to have rpm and wget already installed. Create a temporary directory, paste the following code in a file in that directory, make it executable and run it:

mkdir temp && cd temp vim yumdownload

#!/bin/bash for file in \ elfutils-0.137-3.el5.i386.rpm \ elfutils-libs-0.137-3.el5.i386.rpm \ elfutils-libelf-0.137-3.el5.i386.rpm \ expat-1.95.8-8.2.1.i386.rpm \ gmp-4.1.4-10.el5.i386.rpm \ libxml2-2.6.26-2.1.2.7.i386.rpm \ libxml2-python-2.6.26-2.1.2.7.i386.rpm \ m2crypto-0.16-6.el5.3.i386.rpm \ python-2.4.3-24.el5.i386.rpm \ python-elementtree-1.2.6-5.i386.rpm \ python-iniparse-0.2.3-4.el5.noarch.rpm \ python-sqlite-1.1.7-1.2.1.i386.rpm \ python-urlgrabber-3.1.0-5.el5.noarch.rpm \ readline-5.1-1.1.i386.rpm \ rpm-4.4.2.3-9.el5.i386.rpm \ rpm-libs-4.4.2.3-9.el5.i386.rpm \ rpm-python-4.4.2.3-9.el5.i386.rpm \ sqlite-3.3.6-2.i386.rpm \ yum-3.2.19-18.el5.centos.noarch.rpm \ yum-fastestmirror-1.1.16-13.el5.centos.noarch.rpm \ yum-metadata-parser-1.1.2-2.el5.i386.rpm do wget http://mirror.centos.org/centos-5/5.3/os/i386/CentOS/$file; done

chmod a+x yumdownload ./yumdownload This will get you all rpms you might need before be able to install yum.

Now try installing them all by typing: rpm -Uvh *.rpm This might not work, at least not for us. So try to install yum directly with rpm -Uvh yum-3.2.19-18.el5.centos.noarch.rpm and let the errors guide you. When you run into a circular dependencies, install the rpm by ignoring the dependencies. eg. rpm -Uvh --nodeps yum-fastestmirror*

This should finally allow you to install yum. Good Luck. ;)