O problema, é que o rmp não atualiza/remove certos pacotes que dependem de outros pacotes, ou seja, todos os pacotes devem ser instalados manualmente,o que consome um certo tempo. Lembrei-me do projeto YUM, que veio para simplificar a instalação dos pacotes nesse tipo de distribuição.
O YUM (Yellow dog Updater, Modified) é um software desenvolvido pela Duke University projetado para ser um instalador, atualizador e removedor de pacotes RPM, semelhante ao apt-get do Debian.
Ele trata automaticamente as dependências de arquivos não sendo necessário ficar buscando e instalando as dependências manualmente, lógico que para ele fazer tudo sozinho todas as dependências tem que estar nos repositórios configurados na maquina.
Por padrão o Red Hat não vem com o YUM e sim o Up2date, que só baixa os arquivos dos repositórios oficiais da Red Hat, mediante ao pagamento é claro. Já com YUM não, você pode colocar diversas bases de pesquisa, ficando assim livre do up2date.
==================================
1º Passo - Instalação:
==================================
Baixe e instale a versão do YUM para Red Hat 4. É fácil de ser encontrado na web, basta procurar por: yum-2.4.2-0.4.el4.rf.noarch.rpm
Para fazer a instalação basta rodar no console o comando:
# rpm -ivh yum-2.4.2-0.4.el4.rf.noarch.rpm
Bem, pode acontecer alguns problemas de dependências, como:
Error: Failed dependencies:
python-elementtree is needed by yum-2.4.2-0.4.el4.rf.noarch
python-sqlite is needed by yum-2.4.2-0.4.el4.rf.noarch
urlgrabber is needed by yum-2.4.2-0.4.el4.rf.noarch
Então será necessário instalar estes outros pacotes (que também é fácil achar pela web). Vou colocar aqui uns links da onde eu baixei, mas quando você for fazer, pode não estar ativos, ai você pode localizar pelo google o nome do pacote:
Pacote: python-elementtree-1.2.6-7.el4.rf.i386.rpm
wget ftp://194.199.20.114/linux/dag/redhat/el4/en/i386/dag/RPMS/python-elementtree-1.2.6-7.el4.rf.i386.rpm
# rpm -ivh python-elementtree-1.2.6-7.el4.rf.i386.rpm
Pacote: python-sqlite-1.0.1-1.2.el4.rf.i386.rpm
wget ftp://194.199.20.114/linux/dag/redhat/el4/en/i386/dag/RPMS/python-sqlite-1.0.1-1.2.el4.rf.i386.rpm
# rpm -ivh python-sqlite-1.0.1-1.2.el4.rf.i386.rpm
Dependências relacionadas ao pacote python-sqlite-1.0.1-1.2.el4.rf.i386.rpm:
Pacote sqlite-2.8.17-1.el4.rf.i386.rpm:
wget ftp://fr2.rpmfind.net/linux/dag/redhat/el4/en/i386/dag/RPMS/sqlite-2.8.17-1.el4.rf.i386.rpm
# rpm -ivh sqlite-2.8.17-1.el4.rf.i386.rpm
Pacote: python-urlgrabber-2.9.7-1.2.el4.rf.noarch.rpm
wget ftp://194.199.20.114/linux/dag/redhat/el4/en/i386/dag/RPMS/python-urlgrabber-2.9.7-1.2.el4.rf.noarch.rpm
# rpm -ivh python-urlgrabber-2.9.7-1.2.el4.rf.noarch.rpm
Pronto, já está instalado, porém sem repositórios para fazer as buscas.
==================================
2º Passo - Configuração:
==================================
Vamos criar os arquivos a seguir, lembrando que todos dentro do /etc/yum.repo.d
Arquivo com nome dag.repo:
[dag]
name = Dag
enabled = 1
baseurl = http://dag.freshrpms.net/redhat/el4/en/$basearch/dag/
http = //ftp.heanet.ie/pub/freshrpms/pub/dag/redhat/el4/en/$basearch/dag/
gpgcheck = True
Arquivo com nome dries.repo:
[dries]
name=Extra RedHat EL 4 rpms dries - $releasever - $basearch
baseurl=http://apt.sw.be/dries/redhat/el4/en/$basearch/dries/RPMS
gpgcheck=1
enabled=1
gpgkey=http://dries.ulyssis.org/ayo/RPM-GPG-KEY.dries.txt
Arquivo com nome livna.repo:
[livna]
name=Fedora Core 4 - i386 - livna
baseurl=http://rpm.livna.org/fedora/4/i386/RPMS.lvn
failovermethod=priority
E por último o arquivo jpackage.repo:
[jpackage-generic]
name=JPackage (free), generic
mirrorlist=http://www.jpackage.org/jpackage_generic.txt
failovermethod=priority
gpgcheck=1
gpgkey=http://www.jpackage.org/jpackage.asc
enabled=1
Seguindo a mesma linha iremos montar o repositório dos arquivos liberados pela Red Hat e reunidos no projeto CentOS.
Criar um arquivo dentro do /etc/yum.repo.d com o nome de centos.repo:
[base]
name=CentOS-$releasever - Base
baseurl=http://mirror.centos.org/centos/4/os/i386/
gpgcheck=1
[updates]
name=Red Hat Linux $releasever - Updates
baseurl=http://mirror.centos.org/centos/4/os/i386/
gpgcheck=1
Vamos rodar:
# yum clean all
Ele irá limpar todas as entradas do "banco de dados" do yum.
# yum check-update
Nesse ponto, o yum irá efetuar o download dos repositórios indicados nos arquivos criados previamente. A atualização dos repositórios pode levar alguns minutos.
==================================
3º Passo - Utilização:
==================================
Para instalar um pacote, use o comando "yum install", como em:
# yum install wpa_supplicant
Para removê-lo posteriormente, use:
# yum remove wpa_supplicant
O yum possui também um recurso de busca, que é bastante útil quando você está procurando por um pacote, mas não sabe o nome exato, ou em casos de pacotes que possuem nomes diferentes em relação a outras distribuições. Use o comando "yum search", seguido por alguma palavra ou expressão, que faça parte do nome do pacote ou descrição, como em:
# yum search apache
Ele retorna um relatório contendo todos os pacotes relacionados, incluindo o texto de descrição de cada um.
Para atualizar um pacote, use o comando "yum update", como em:
# yum update wpa_supplicant
Tutorial adaptado de:
http://jf.eti.br/howto-yum-no-red-hat-enterprise-linux-4/
Fontes:
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=6581
http://www.lupaworld.com/24527/viewspace_3008.html
http://www.sk360.info/wiki/articles/7/1/Install-yum-on-RHEL4/Page1.html
http://maimon-it.blogspot.com/2005/06/install-yum-on-redhat-enterprise-linux.html
http://www.guiadohardware.net/artigos/revisao-pacotes-servicos/