Thursday, June 30, 2005

Install yum on Redhat Enterprise Linux 4

It's not very intuitive to install yum on RHEL, you always need to rebuild yum from the srpm to compile it with the python version comes with redhat and resolve the dependencies:
  • get yum source rpm from yum site
    • run: rpmbuild --rebuild {source-rpm-file}
  • get the latest python-urlgrabber source rpm from the fedora project
    • run: rpmbuild --rebuild {source-rpm-file}
  • get the latest python-sqlite rpm from dag repository
  • get the latest python-elementtree rpm from dag repository
  • get the latest sqlite rpm from dag repository
  • get the latest python-celementtree rpm from dag repository. This rpm is not required as a dependency by the other rpms, but without it you will get the following error when you will try to run yum:
 version of python  2.3.4 (#1, Feb  2 2005, 11:44:49)
[GCC 3.4.3 20041212 (Red Hat 3.4.3-9.EL4)]
Please make sure the package you used to install yum was built for your
install of python.
Install all the rpms:
rpm -Uvh {all rpm files}

The packages I used are:
yum-2.3.3-1.src.rpm
python-urlgrabber-2.9.6-1.src.rpm
python-sqlite-0.5.0-1.2.el4.rf.i386.rpm
python-elementtree-1.2.6-1.2.el4.rf.noarch.rpm
sqlite-2.8.16-1.2.el4.rf.i386.rpm
python-celementtree-1.0.2-1.2.el4.rf.i386.rpm

Regards,
Oded.

8 comments:

Anonymous said...

for the new versions of yum, also download createrepo, to create the yum repository xml files

http://linux.duke.edu/projects/metadata/

Anonymous said...

Using your instructions here, i just can't seem to get it to work.
I have a RHEL4 server, and most all those RPMs are installed without a hitch, except that when installing the python-elementtree rpm, i get:
"error: open of !DOCTYPE failed: No such file or directory
error: open of HTML failed: No such file or directory
error: open of PUBLIC failed: No such file or directory"
and then the process just hangs.

if i ctrl+c the python-elementtree install and try to install the yum rpm, it gives the user/group "skvidal does not exist - using root"-error, but installs. yet when i try to use yum, for example by just typing in "yum" and pressing enter i get "bash: yum: command not found".

any ideas?

Anonymous said...

here's an even simpler way for the lazy admin:
1. install rhel4 and such
2. wget http://linux.duke.edu/projects/yum/download/2.0/yum-2.0.5-1.noarch.rpm
3. rpm -Uvh yum-2.0.5-1.noarch.rpm
4. nano /etc/yum.conf
5. change the baseurl in [base] to
http://mirror.dulug.duke.edu/pub/centos/4/os/$basearch/
6. change the baseurl in [updates] to
http://mirror.dulug.duke.edu/pub/centos/4/updates/$basearch/
7. yum install yum
8. ???????
9. make money

Anonymous said...

Really nice and simple instructions for the lazy/newbie admin.
Thanks "Anonymous"

Anonymous said...

Best and simple instructions. Thanks anonymous!

Anonymous said...

yum installation had changed release from redhat enterprise 4 to centos,
will this create problems.

vinod gajula

Anonymous said...

Thanks to 'lazy admin' instructions. I had tried to install yum the traditional way from the RPM, had no luck importorting the yum module in python... but this worked!
This is the solution to get it working on Redhat Enterprise 4.

Thanks to the anon. poster!

Anonymous said...

Beautiful! Still using RHEL4 to this day on an old IBM PC; couldn't find good instructions (and working links) to install yum, and your instructions still work 5 years later :D Thank you!