systemd - type - linux comando journalctl
Cómo funciona realmente el comando de parada del sistema (1)
Estoy usando un servicio systemd que llama a un proceso cuando se ha "iniciado" (por ejemplo, $ systemctl start test.service). Según el diseño, el proceso permanece para siempre en un bucle, podemos ver la existencia del proceso utilizando el comando ''ps''. También hemos visto que el proceso se está acabando (como está previsto) para el comando systemctl stop. Sin embargo, nuestro requisito es que queremos realizar algunas operaciones de apagado seguro dentro del proceso antes de que se cancele. Pero no estoy seguro de cómo detectar una operación de detención del sistema desde el proceso.
¿Un comando systemctl stop test.service envía una señal SIGKILL o SIGTERM para detener el proceso? ¿Cómo puedo detectar una operación de detención systemctl desde un proceso?
De forma predeterminada, se envía un SIGTERM, seguido de 90 segundos de espera seguido de un SIGKILL.
El proceso de systemd
con systemd
es muy personalizable y está bien documentado.
Recomiendo leer todo man systemd.kill , así como leer sobre ExecStop = en man systemd.service, ya que el documento contiene todas las opciones.