🛠️ Guía Rápida de systemctl para Administradores de Servidores

systemctl es la herramienta principal para interactuar con systemd, el sistema de inicio y gestión de servicios en la mayoría de las distribuciones Linux modernas (como CentOS, RHEL, Ubuntu, Debian).


📚 Índice

📦 Gestión Básica de Servicios

# Iniciar un servicio
sudo systemctl start nombre-servicio

# Detener un servicio
sudo systemctl stop nombre-servicio

# Reiniciar un servicio
sudo systemctl restart nombre-servicio

# Recargar configuración sin cortar el proceso
sudo systemctl reload nombre-servicio

# Ver el estado de un servicio
systemctl status nombre-servicio

🚀 Habilitar/Deshabilitar Servicios al Arranque

# Habilitar para que inicie automáticamente al arrancar
sudo systemctl enable nombre-servicio

# Deshabilitar (no se iniciará al arrancar)
sudo systemctl disable nombre-servicio

# Ver si un servicio está habilitado
systemctl is-enabled nombre-servicio

🔄 Ver Servicios Activos y Estado del Sistema

# Ver todos los servicios activos
systemctl list-units --type=service

# Ver todos los servicios (activos e inactivos)
systemctl list-units --type=service --all

# Ver todos los servicios instalados (aunque no estén cargados)
systemctl list-unit-files --type=service

📖 Logs del Servicio

# Ver logs del servicio (útil para debug)
journalctl -u nombre-servicio

# Ver logs en tiempo real (modo tail)
journalctl -u nombre-servicio -f

💣 En caso de emergencia

# Forzar reinicio inmediato del sistema (¡peligroso!)
sudo systemctl reboot --force

# Apagar el sistema
sudo systemctl poweroff

# Reiniciar solo el servicio de red (útil en VPS sin GUI)
sudo systemctl restart NetworkManager  # o network.service según distro

🧠 Tipos de estados comunes

  • active (running): Servicio activo y en ejecución.
  • inactive (dead): Servicio detenido.
  • failed: Falló al iniciarse o se detuvo con error.
  • activating/deactivating: Está en proceso de cambio de estado.

🧩 Tips adicionales

# Recargar systemd tras crear o editar archivos .service
sudo systemctl daemon-reload

# Ver dependencias de un servicio
systemctl list-dependencies nombre-servicio

Este resumen cubre el 90% de los casos que enfrentarás administrando servidores. Si algo no funciona, lo más probable es que esté en los logs o que olvidaste el daemon-reload tras editar un unit file.

Guárdalo, úsalo y si algo explota… al menos sabrás cómo apagarlo con estilo.