¿Cómo configurar los servicios systemd para iniciar/detener procesos con orden predefinido y tiempos de espera entre sus inicios?

¿Cómo configurar los servicios systemd para iniciar/detener procesos con orden predefinido y tiempos de espera entre sus inicios?

Utilizo systemd para iniciar/detener 4 servicios en orden secuencial usando los campos Requires/After/Before/BindsTo.

systemctl start service01iniciar tal orden de inicio:

servicio01 -> servicio02 -> servicio03 -> servicio04

La acción de detención se configura a través de BindTo en el lado service0[234]. Están vinculados al servicio 01, por lo que, en caso de que se detenga, también se detendrán otros servicios.

Pero debido a algunos problemas, se debe configurar un retraso de 5 a 10 segundos entre el inicio del servicio 02 y el servicio 03.

¿Es posible utilizar systemd para esto?

Claro, podría agregar "sleep 10" al comienzo de ExecStart en service03, pero tal vez haya otras formas de usar systemd para esto.

Respuesta1

HayTemporizadorunidades en systemd. Intente usar OnUnitActiveSec=la opción si elige usar un temporizador para la tarea.

información relacionada