Saltar al contenido principal

Capítulo 10.2 - yum/dnf (Red Hat/CentOS)

Objetivos de Aprendizaje​

Al final de este capítulo, usted será capaz de:

  • Utilizar yum y dnf para instalar paquetes
  • Actualizar el sistema
  • Gestionar los repositorios
  • Comprender los grupos de paquetes
  • Utilizar las transacciones

yum vs dnf​

yum (Clásico)​

Yellowdog Updater Modified:

  • Red Hat/CentOS 7 y anteriores
  • Siempre disponible
  • Interfaz clásica

dnf (Moderno)​

Dandified YUM:

  • Red Hat/CentOS 8+ y Fedora
  • Sucesor de yum
  • Más rápido y moderno
  • Misma sintaxis que yum

Nota: yum suele ser un alias de dnf en sistemas recientes.


Comandos Básicos​

Actualización​

# Actualizar lista de paquetes
sudo yum check-update
sudo dnf check-update

# Actualizar paquetes
sudo yum update
sudo dnf upgrade

# Actualizar paquete específico
sudo yum update nombre-paquete
sudo dnf upgrade nombre-paquete

Instalación​

# Instalar paquete
sudo yum install nombre-paquete
sudo dnf install nombre-paquete

# Instalar varios paquetes
sudo yum install paquete1 paquete2 paquete3

# Instalar sin confirmación
sudo yum install -y nombre-paquete

# Instalar desde archivo .rpm
sudo yum localinstall archivo.rpm

Eliminación​

# Eliminar paquete
sudo yum remove nombre-paquete
sudo dnf remove nombre-paquete

# Eliminar paquete y dependencias
sudo yum autoremove nombre-paquete

# Limpiar caché
sudo yum clean all
sudo dnf clean all

Búsqueda e Información​

Buscar​

# Buscar paquete
yum search palabra-clave
dnf search palabra-clave

# Buscar por nombre
yum list nombre-paquete
dnf list nombre-paquete

# Información del paquete
yum info nombre-paquete
dnf info nombre-paquete

# Listar paquetes instalados
yum list installed
dnf list installed

# Listar paquetes disponibles
yum list available
dnf list available

Información​

# Información detallada
yum info nombre-paquete

# Dependencias
yum deplist nombre-paquete
dnf repoquery --deplist nombre-paquete

# Contenido del paquete
rpm -ql nombre-paquete

Repositorios​

Ver los Repositorios​

# Listar repositorios habilitados
yum repolist
dnf repolist

# Todos los repositorios
yum repolist all
dnf repolist all

# Información del repositorio
yum repoinfo nombre-repo
dnf repoinfo nombre-repo

Agregar Repositorio​

# Instalar repositorio RPM
sudo yum install epel-release
sudo dnf install epel-release

# Agregar repositorio manualmente
# Crear archivo: /etc/yum.repos.d/mi-repo.repo

[mi-repo]
name=Mi Repositorio
baseurl=http://repo.example.com/rhel/$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://repo.example.com/RPM-GPG-KEY

# Recargar
sudo yum makecache
sudo dnf makecache

EPEL (Extra Packages)​

# Instalar EPEL
sudo yum install epel-release
sudo dnf install epel-release

# Verificar
yum repolist | grep epel

Grupos de Paquetes​

Gestión de Grupos​

# Listar grupos disponibles
yum grouplist
dnf group list

# Información del grupo
yum groupinfo "Development Tools"
dnf group info "Development Tools"

# Instalar grupo
sudo yum groupinstall "Development Tools"
sudo dnf group install "Development Tools"

# Eliminar grupo
sudo yum groupremove "Development Tools"

Transacciones e Historial​

Historial​

# Ver historial
yum history
dnf history

# Ver transacción específica
yum history info 5
dnf history info 5

# Deshacer transacción
sudo yum history undo 5
sudo dnf history undo 5

# Repetir transacción
sudo yum history redo 5

Ejemplos Prácticos​

Instalación Completa​

# Actualizar
sudo yum check-update

# Instalar paquete
sudo yum install httpd

# Iniciar servicio
sudo systemctl start httpd
sudo systemctl enable httpd

# Verificar
systemctl status httpd

Actualización del Sistema​

#!/bin/bash
# Script de actualización

echo "Verificando actualizaciones..."
sudo yum check-update

echo "Actualizando paquetes..."
sudo yum update -y

echo "Limpiando..."
sudo yum clean all

echo "¡Terminado!"

Resolución de Problemas​

Dependencias​

# Resolver dependencias
sudo yum deplist nombre-paquete

# Forzar instalación
sudo rpm -ivh --nodeps paquete.rpm # ¡Atención!

Caché​

# Limpiar caché
sudo yum clean all
sudo yum clean metadata
sudo yum clean packages

# Reconstruir caché
sudo yum makecache

Resumen​

En este capítulo, usted ha aprendido:

yum/dnf: Gestores de paquetes Red Hat/CentOS/Fedora
Comandos: install, update, remove, search, info
Repositorios: repolist, epel-release, archivos .repo
Grupos: grouplist, groupinstall
Historial: history, undo, redo
Práctica: Instalación, actualización, mantenimiento


Próximos Pasos​

Capítulo 10.3: Compilación desde Fuentes
Módulo 11: Monitoreo y Logs


Capítulo creado el: Diciembre 2024