En sistemas basados en Linux como Debian y CentOS, gestionar servicios es una tarea fundamental para administradores de sistemas. Los servicios controlan procesos importantes como servidores web, bases de datos, o firewalls. Este artículo te guiará en cómo activar, desactivar, reiniciar, y configurar servicios para que se inicien o no automáticamente al arrancar el sistema.
Comandos Base: systemctl
Ambos sistemas operativos usan systemctl
, una herramienta de systemd
, para la administración de servicios. Aquí se describen los comandos más comunes:
1. Activar un Servicio
Para iniciar un servicio manualmente en el momento:
sudo systemctl start <nombre-del-servicio>
Por ejemplo, para activar el servidor web Apache:
sudo systemctl start apache2 # En Debian
sudo systemctl start httpd # En CentOS
2. Desactivar un Servicio
Para detener un servicio en ejecución:
sudo systemctl stop <nombre-del-servicio>
Por ejemplo:
sudo systemctl stop apache2 # En Debian
sudo systemctl stop httpd # En CentOS
3. Reiniciar un Servicio
Para reiniciar un servicio, útil tras realizar cambios en su configuración:
sudo systemctl restart <nombre-del-servicio>
Ejemplo:
sudo systemctl restart apache2 # En Debian
sudo systemctl restart httpd # En CentOS
4. Verificar el Estado de un Servicio
Puedes comprobar si un servicio está activo y funcionando con:
sudo systemctl status <nombre-del-servicio>
El comando mostrará si el servicio está activo (active (running)
) o inactivo.
5. Habilitar un Servicio en el Arranque
Si deseas que un servicio se inicie automáticamente al arrancar el sistema:
sudo systemctl enable <nombre-del-servicio>
Ejemplo:
sudo systemctl enable apache2 # En Debian
sudo systemctl enable httpd # En CentOS
6. Deshabilitar un Servicio en el Arranque
Para evitar que un servicio se inicie automáticamente:
sudo systemctl disable <nombre-del-servicio>
Por ejemplo:
sudo systemctl disable apache2 # En Debian
sudo systemctl disable httpd # En CentOS
7. Comprobar Servicios Configurados en el Arranque
Si quieres ver todos los servicios habilitados o deshabilitados para el inicio del sistema:
sudo systemctl list-unit-files --type=service
Notas Específicas para Debian y CentOS
Aunque los comandos son idénticos gracias a systemd
, hay pequeñas diferencias en los nombres de algunos servicios entre ambas distribuciones. Por ejemplo:
- Apache:
apache2
en Debian,httpd
en CentOS. - Firewall:
ufw
en Debian,firewalld
en CentOS.
Consejos Adicionales
- Recargar la Configuración del Servicio: Si realizas cambios menores y no deseas reiniciar:
sudo systemctl reload <nombre-del-servicio>
- Ver Logs del Servicio: Si necesitas diagnosticar problemas:
sudo journalctl -u <nombre-del-servicio>
Administrar servicios es esencial para mantener tu sistema estable y seguro. Dominar estos comandos te permitirá personalizar el comportamiento de tu servidor y garantizar que los servicios necesarios estén disponibles cuando los necesites.