CentOS 5.4 – Adicionando o repositório RPMforge

Publicado: fevereiro 27, 2010 em CentOS
Tags:, ,

Introdução

Logo após a instalação de um sistema CentOS, é comum não encontrar disponível para instalação alguns pacotes, posso citar o perl-Apache-DBI como exemplo. Isto ocorre pelo fato do sistema estar utilizando somente o repositório oficial do CentOS. Para resolver esta “carência”, utilizamos repositórios de terceiros, onde o mais “badalado” é o RPMforge.

Neste tutorial irei demonstrar como instalar o repositório RPMforge.

1. Criando diretório para downloads (Opcional)

mkdir /downloads
cd /downloads

2. Download

Sistemas 32 bits

wget http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm

Sistemas 64 bits

wget http://apt.sw.be/redhat/el5/en/x86_64/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm

3. Importando a chave pública
Esta chave será utilizada para assinar e verificar pacotes RPM.

rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

As chaves dos distribuidores de software estão armazenadas em /etc/pki/rpm-gpg.

4. Instalando a chave pública

rpm -ivh rpmforge*

5. Priorizando repositórios oficiais

É possível que tenhamos o mesmo pacote disponível em ambos repositórios (Oficial e RPMforge). Para evitar eventuais problemas causado por pacotes não oficiais, iremos instalar um plugin do yum chamado yum-priorities. O yum-priorities vai garantir que os pacotes serão instalados a partir de um repositório oficial, mesmo que estes pacotes também estejam disponíveis no repositório não oficial configurado no sistema.

yum install -y yum-priorities

6. Configurando o yum-priorities

Edite o arquivo abaixo:

/etc/yum/pluginconf.d/priorities.conf

Certifique-se que o arquivo possua as seguintes linhas:

[main]
enabled=1

Editando a prioridade de cada repositório

Os arquivos de configuração dos repositórios estão em /etc/yum.repos.d e possuem a extensão .repo. Agora é necessário editar a prioridade de cada repositório, conforme o exemplo abaixo:

vi /etc/yum.repos.d/CentOS-Base.repo

Adicionar a linha priority=N, onde N é um número inteiro de 1 a 99. Os repositórios com o menor número de prioridade numérica tem a maior prioridade. Ex.: priority=1 tem maior prioridade que priority=2.

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

Recomendações de prioridades

[base],  [updates], [addons], [extras] ... priority=1
[centosplus],[contrib] ... priority=2
Outros repositórios ... (Ex.: RPMforge) ... priority=N  (Onde N é > 10 e com base na sua preferência)

7. Verificando se o plugin foi carregado corretamente

Na segunda linha temos a confirmação de que o plugin yum-priorities foi carregado corretamente.

yum check-update
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
 * addons: centos.pop.com.br
 * base: centos.pop.com.br
 * extras: centos.pop.com.br
 * rpmforge: apt.sw.be
 * updates: centos.pop.com.br
rpmforge                                                                                                                                                     | 1.1 kB     00:00
169 packages excluded due to repository priority protections

Até o próximo!

:wq!
Andrey Smith

Deixe um comentário