terça-feira, 30 de dezembro de 2008

Instalação do Yum no Red Hat Enterprise Linux 4

Utilizando o RHEL4, necessitei de instalar e remover alguns pacotes. Para quem está habituado no ambiente Debian, essa tarefa costuma ser trivial quando se utiliza o utilitário apt-get. Já no RHEL 4, tive que utilizar o utilitário rpm.

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/

Nenhum comentário: