Hace unos días habíamos visto como realizar la instalación de Centos 6.4 en modo texto, hoy me dispongo a mostrarle como configurar los repositorios de CentOS con los existentes aquí en la Universidad.

Tipos de repositorio

CentOS al igual que su sistema base utiliza paquetería RPM, los cuáles pueden ser gestionados por programas como el RPM(Red Hat Package Manager), YUM(Yellowdog Updater, Modified) o PUPPET. Centos posee su propio repositorio, pero puede utilizar repositorios como sus sistema base Red Hat de tipo EPEL(Extra Package for Enterprise Linux) o repositorios para utilizar mediante la herramienta PUPPET.

Ficheros .repo

Los ficheros de configuración de los repositorios en CentOS se encuentran en el directorio /etc/yum.repos.d/, si listamos el contenido del repositorio veremos que tenemos 4 archivos:

ls /etc/yum.repos.d/

Estos archivos vienen configurados para que por defecto utilicen los repositorios de CentOS utilizando Internet, por lo que si poseemos mala conectividad o no tenemos conectividad a Internet es recomendado utilizar algunos a los que tengamos acceso.

Lo primero es eliminar todo el contenido del directorio

rm -f /etc/yum.repos.d/*

Luego nos movemos hasta este directorio

cd /etc/yum.repos.d/

Y una vez allí descargamos el archivo de configuración de los repos que nos ofrecen en los repositorios de CentOS de la universidad.

wget http://centos.uci.cu/centos/CentOS-UCI.repo

Una vez concluida la descarga de este archivo, si volvemos a listar el directorio veremos que tenemos un nuevo archivo de configuración de repositorios, veamos que contiene el mismo, para ello utilizaré el editor de texto que trae por defecto el sistema, habló de vi, no me detendré a explicar todos los comandos del mismo, solo haré mención a los que vaya a utilizar.

vi CentOS-UCI.repo

Al realizar esta operación nos muestra un archivo de texto que posee una estructura como la siguiente:

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

Lo primero que se pone es el nombre que va a tener el repositorio, este es el que se muestra cuando utilizamos la herramienta YUM para administrar los paquetes del repositorio. El parámetro baseurl especifica la dirección desde donde va a tomar los paquetes, en este caso es desde la dirección http://centos.uci.cu/centos/6.4/os/i386, donde $releasever es 6.4 y $basesearch es la arquitectura en mi caso i386.

El parámetro gpgcheck indica si es necesario comprobar la firma de los paquetes y por defecto está siempre en 1, el gpgkey indica donde se encuentra la llave para este repositorio. El otro parámetro importante es el enabled cuando su valor es 0 indica que el repositorio no estará habilitado y que no se podrán instalar paquetes desde allí.

Ya podemos actualizar la lista de paquetes para ello podemos hacerlo mediante el comando:

yum update

Agregando repositorio EPEL

Para adicionar primero el repositorio EPEL, lo primero será descargarnos la llave del mismo.

wget http://centos.uci.cu/epel/RPM-GPG-KEY-EPEL-6

Una vez descargada la importamos utilizando el RPM.

rpm --import RPM-GPG-KEY-EPEL-6

Ya tenemos la firma, solo nos falta la lista de paquetes, la descargamos al igual que lo hicimos con la configuración de los repositorios de CentOS.

wget http://centos.uci.cu/epel/epel6-uci.repo

Luego de esto volvemos a actualizar la lista de paquetes con yum:

yum update

Y ya tenemos listo nuestro repositorio EPEL, ahora solo nos queda el puppet.

Agregando repositorio PUPPET

Agregar repositorios en puppet sería tan sencillo como los anteriores, pero por desgracia no existe configurado un archivo que te permita decargarlo y utilizarlo aquí en la universidad, por lo que veremos como configurarlo de forma manual.

Lo primero es crear un archivo con nombre puppet-uci.repo en el directorio /etc/yum.repos.d/, lo abriremos y le adicionaremos las siguientes líneas:

vi /etc/yum.repos.d/puppet-uci.repo

Y las líneas son:

[puppet-labs]

name=Puppet Labs Packages

baseurl=http://centos.uci.cu/puppet/yum/el/6/products/i386/

enabled=1

gpgcheck=0

[puppet-lab-dependencies]

name=Puppet Labs Dependencies

baseurl=http://centos.uci.cu/puppet/yum/el/6/dependencies/i386/

enabled=1

gpgcheck=0

Lo siguiente es actualizar la lista de paquetes e instalar el paquete puppet

yum install puppet

Y listo tenemos configurado nuestro repositorio PUPPET, solo queda instalar los paquetes que necesites