Cómo lidiar con repositorios en CentOS — Porque, por supuesto, Linux tiene que hacerlo más difícil de lo necesario
Si alguna vez has intentado mantener tu sistema actualizado y te has topado con extraños conflictos de paquetes o no has podido encontrar una versión más reciente de algún software, no estás solo. Los repositorios predeterminados suelen mantener la estabilidad, pero no son precisamente de vanguardia. Ahí es donde entran en juego los repositorios de terceros, como EPEL o Remi. Instalarlos puede ampliar tus opciones, pero, sinceramente, puede ser un poco complicado descubrir cómo habilitarlos, deshabilitarlos o administrarlos sin dañar nada. Así que veamos cómo solucionar esto sin que te reviente la cabeza. Tendrás acceso a software más reciente y podrás controlar mejor lo que está instalado en tu equipo.
¿Cómo habilitar el repositorio EPEL y Remi en CentOS?
¿Qué sentido tiene y cuándo debería molestarme?
Antes de empezar, conviene saber: EPEL (Paquetes Extra para Enterprise Linux) es el repositorio estrella para extras: piensa en PHP, herramientas de monitorización y mucho más. Remi es ideal para obtener las últimas versiones de PHP o MySQL. Normalmente, si falta algo o está desactualizado en los repositorios predeterminados, estos te ayudarán. No entran en conflicto con los paquetes principales, así que es seguro (la mayoría de las veces, pero sí, a veces hay conflictos, solo para que estés avisado).Podrás instalar herramientas más nuevas con menos problemas una vez que estén habilitadas.
Cómo activarlos: comandos y pasos
- Comprueba primero qué repositorios están habilitados:
yum repolist— podrían ser solo el básico, los extras y las actualizaciones. Esto está bien para empezar, pero no incluye muchas novedades. - Instalar EPEL en CentOS 7:
yum install epel-releaseEs muy fácil. Una vez ejecutado, el repositorio aparecerá en tu lista inmediatamente, sin necesidad de borrar la caché. Piensa en ello como añadir un nuevo estante a tu biblioteca de software. - Para Remi: ejecuta. Esto agrega un repositorio con PHP bastante reciente y otras actualizaciones.(Reemplaza «7» con tu versión de CentOS, obviamente).
rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm - ¿Quieres habilitar una versión específica de PHP en Remi? Busca el archivo en /etc/yum.repos.d/ (como remi-php73.repo) y establece [nombre del archivo]
enabled=1. Esto es importante porque, de lo contrario, simplemente quedaría ahí, como un mueble sin usar.
Consejo profesional: creación de configuraciones de repositorio personalizadas
Si un paquete o repositorio no está disponible mediante RPM, puede crear un archivo .repo personalizado en /etc/yum.repos.d/. Simplemente añada información básica como [myrepo]con namey baseurl. Por ejemplo, añadir MariaDB se vería así:
[mariadb] name=MariaDB baseurl=http://yum.mariadb.org/10.4/centos7-amd64/ gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1 enabled=1
Cómo administrar y configurar sus repositorios: porque un poco de control ayuda mucho
¿Dónde se almacenan las configuraciones del repositorio?
En /etc/yum.repos.d/, con la extensión .repo. Cada archivo es básicamente una miniconfiguración para un repositorio.
¿Cómo se ven estos archivos?
Suelen contener elementos como name, baseurl, enabled(1 o 0) y otras opciones como gpgcheck. Aquí tienes un ejemplo básico:
[myrepo] name=My Custom Repo baseurl=http://some.server.com/repo/ enabled=1 gpgcheck=1 gpgkey=https://some.server.com/RPM-GPG-KEY
Cómo deshabilitar un repositorio
- Editar el archivo .repo
- Colocar
enabled=0 - Limpia la caché de yum con
yum clean all - Reconstruir caché con
yum makecache
Esto impide que el repositorio aparezca en la gestión de paquetes. Si desea desactivarlo temporalmente solo para una actualización o instalación, use la --disablerepo=REPO_NAMEopción con su comando. Ejemplo:
yum update --disablerepo=epel
Cómo deshabilitar varios repositorios temporalmente
Digamos que solo quieres actualizar desde un repositorio específico (como MariaDB).Ejecuta:
yum update --disablerepo="*" --enablerepo=mariadb
Uso de yum-utils para una gestión más sencilla
Este conjunto de herramientas (instalar con yum -y install yum-utils) simplifica la deshabilitación o habilitación de repositorios, especialmente en configuraciones más complejas. Por ejemplo, para deshabilitar remi: yum-config-manager --disable remio eliminar un repositorio por completo, elimine su archivo .repoyum clean all y luego ejecute y yum makecache.
Comprobación de actualizaciones de paquetes en repositorios específicos
Si desea ver qué actualizaciones están disponibles en un repositorio determinado, simplemente ejecute:
yum check-update --disablerepo="*" --enablerepo=mariadb
De esta manera, puedes estar al tanto de lo que está listo para usarse sin saturar tus vistas con todos los repositorios.
Otros repositorios que vale la pena conocer — ¿Por qué no?
- MariaDB : clona sus instrucciones de configuración del repositorio y agrega su
[mariadb]archivo de repositorio para obtener versiones estables o más recientes de MariaDB. - Nginx : Para servidores web, cree un archivo en /etc/yum.repos.d/nginx.repo con la información relevante del repositorio. Las instrucciones oficiales de Nginx suelen incluir claves gpg y las URL correctas para su versión de CentOS.
- Webtatic : Compatible con PHP, pero su versión más reciente podría estar un par de atrás de Remi. Instalar con
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm - MySQL : Si te gusta MySQL, descarga el RPM del [sitio web de Oracle](https://dev.mysql.com/downloads/repo/yum/) y sigue sus instrucciones. Ten en cuenta que MariaDB se ha convertido en la opción predeterminada en la mayoría de los servidores Linux.
Estos repositorios son bastante fiables, pero siempre revisa bien las URL de los repositorios y las claves GPG. Porque, claro, Linux tiene que seguir complicando las cosas justo cuando creías que lo entendías todo.
Resumen
Administrar repositorios en CentOS no debería ser un dolor de cabeza una vez que le agarres la mano: descarga los RPM correctos, ajusta las configuraciones y revisa tu lista de repositorios habilitados. A veces, simplemente deshabilitar un repositorio yum-config-managero editar su archivo .repo marca una gran diferencia. La clave está en saber cuáles dejar habilitados y cuáles deshabilitar cuando surgen problemas o buscas lo último y lo mejor.
Resumen
- Instale repositorios adicionales como EPEL y Remi, según sus necesidades
- Edite archivos en /etc/yum.repos.d/ para control personalizado
- Uso
yum clean allyyum makecachedespués de los cambios - Consultar repositorios específicos con
yum check-update --disablerepo="*" --enablerepo=yourrepo - Herramientas como yum-utils facilitan la gestión de repositorios
Con suerte, esto le ahorrará algunas horas a alguien. Es un poco complicado, pero con esto, al menos el tema del repositorio debería estar un poco más despejado.