Rain WikiWindows · Linux · Android

unidades de systemd y systemctl

ServicioDistribuciones con systemd

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

  1. Listar unidades con errores: systemctl --failed
  2. Mostrar el estado y los mensajes recientes: systemctl status <unit>
  3. Leer el registro completo de este arranque: journalctl -u <unit> -b
  4. 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.

Fuentes

  1. systemctl(1) man7.org
  2. systemd.unit(5) man7.org
  3. systemd.timer(5) man7.org

Última revisión: