unidades de systemd y systemctl
Una unidad de systemd es un objeto de configuración que gestiona systemd, el sistema de inicio de la mayoría de las distribuciones de Linux: servicios, sockets, temporizadores, puntos de montaje y más. Las unidades se describen mediante archivos de unidad como /etc/systemd/system/<name>.service y se controlan con el comando systemctl.
1Tipos de unidades
.service ejecuta un programa, .socket inicia un servicio cuando llega una conexión, .timer ejecuta una unidad según una programación, .mount y .automount gestionan sistemas de archivos, .target agrupa unidades en estados como multi-user.target.
2Dónde se ubican los archivos de unidad
Los paquetes instalan unidades en /usr/lib/systemd/system (o /lib/systemd/system). Los cambios locales pertenecen a /etc/systemd/system, que tiene preferencia. systemctl edit <unit> crea una anulación complementaria en lugar de modificar el archivo empaquetado.
3Comandos cotidianos
systemctl status <unit> muestra el estado y las últimas líneas de registro. 'start', 'stop' y 'restart' actúan de inmediato; 'enable' y 'disable' controlan el inicio al arrancar; 'enable --now' realiza ambas acciones. systemctl --failed enumera las unidades con errores y systemctl daemon-reload vuelve a leer los archivos de unidad tras realizar cambios.
Cómo comprobar un servicio que falla
- Listar unidades con errores:
systemctl --failed - Mostrar el estado y los mensajes recientes:
systemctl status <unit> - Leer el registro completo de este arranque:
journalctl -u <unit> -b - Tras corregir la configuración:
sudo systemctl restart <unit>
Precauciones
- Modifique las unidades empaquetadas con
systemctl edit, no editando archivos en/usr/lib/systemd/system: las actualizaciones los sobrescriben. - No desactive unidades que no conozca, como systemd-journald o dbus.
Artículos relacionados
- journalctl y el diario de systemdCómo leer registros con journalctl, comprobar cuánto espacio utiliza el diario y reducirlo de forma segura con las opciones --vacuum.
- cron y crontabCómo ejecuta cron las tareas programadas, los cinco campos de tiempo de crontab, dónde se encuentran los archivos del sistema de cron y cómo se comparan los temporizadores de systemd.
- logrotateQué hace logrotate, cómo funciona su configuración en /etc/logrotate.conf y /etc/logrotate.d, y cómo probar una regla de forma segura.
Fuentes
- systemctl(1) man7.org
- systemd.unit(5) man7.org
- systemd.timer(5) man7.org
Última revisión: