Gestión de paquetes en Linux

La gestión de paquetes es una de las tareas más frecuentes y críticas para un sysadmin. Permite instalar, actualizar, verificar y eliminar software de forma segura y controlada.

En este módulo aprenderás a manejar los principales gestores de paquetes, entender cómo funcionan internamente y aplicar buenas prácticas en entornos productivos.


Introducción / Concepto principal

Un paquete es una unidad distribuible de software que incluye:

  • Binarios o scripts
  • Archivos de configuración
  • Metadatos (versión, dependencias, arquitectura)

Linux utiliza gestores de paquetes para automatizar la instalación y mantener la coherencia del sistema.

Un sysadmin no instala software “a mano”: usa siempre el gestor de paquetes.


Tipos de gestores de paquetes

Basados en Debian

  • apt, apt-get, apt-cache
  • Formato: .deb
  • Ejemplos: Debian, Ubuntu

Basados en Red Hat

  • dnf, yum
  • Formato: .rpm
  • Ejemplos: RHEL, CentOS, Rocky, Fedora

Otros formatos modernos

  • Snap
  • Flatpak
  • AppImage

Cada formato tiene implicaciones de seguridad, aislamiento y mantenimiento.


Gestión de paquetes con APT ⚙️

Actualizar índices y paquetes

apt update
apt upgrade

Instalar y eliminar software

apt install nginx
apt remove nginx
apt purge nginx
  • remove → elimina binarios
  • purge → elimina también configuración

Búsqueda e información

apt search apache
apt show apache2

Mantener el sistema actualizado reduce vulnerabilidades conocidas.


Gestión con DNF / YUM

Instalación y actualización

dnf install httpd
dnf update

Eliminación

dnf remove httpd

Información del paquete

dnf info httpd
dnf list installed

dnf gestiona dependencias de forma más eficiente que yum.


Dependencias y repositorios

Dependencias

  • Los paquetes dependen de otros paquetes
  • El gestor resuelve dependencias automáticamente
  • Problemas comunes:
    • dependencias rotas
    • versiones incompatibles
apt --fix-broken install

Repositorios

  • Orígenes de paquetes
  • Definen qué software está disponible
cat /etc/apt/sources.list
ls /etc/yum.repos.d/

⚠️ Añadir repositorios no oficiales aumenta riesgos de seguridad.


Verificación y consultas avanzadas

Archivos instalados por un paquete

dpkg -L paquete
rpm -ql paquete

Saber qué paquete instaló un archivo

dpkg -S /ruta/archivo
rpm -qf /ruta/archivo

Versiones disponibles

apt policy paquete
dnf list --available paquete

Puntos críticos / Errores comunes

  • Instalar software fuera del gestor de paquetes
  • Mezclar repositorios incompatibles
  • No revisar actualizaciones de seguridad
  • Eliminar paquetes críticos por dependencia
  • Usar versiones no soportadas en producción

Consejo: menos repositorios, más estabilidad


Ejercicios prácticos

1. Buscar e instalar un paquete

apt search htop
apt install htop

2. Consultar archivos instalados por un paquete

dpkg -L htop

3. Eliminar un paquete y su configuración

apt purge htop

Mentalidad

  • Instalar solo lo necesario
  • Entender qué trae cada paquete
  • Mantener sistemas actualizados regularmente
  • Priorizar repositorios oficiales
  • Probar cambios antes de producción

Resumen

  • Los paquetes son unidades de software gestionadas
  • APT y DNF son los gestores más comunes
  • Los repositorios definen el origen del software
  • Las dependencias garantizan funcionamiento correcto
  • Una mala gestión de paquetes compromete seguridad y estabilidad

Siguiente paso

En el siguiente módulo entrarás en:

Documentación y buenas prácticas 10-documentacion.md

Donde verás:

  • Cómo documentar sistemas Linux
  • Estándares y hábitos profesionales
  • Documentación útil para troubleshooting
  • Pensar como sysadmin senior