GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo detener el servicio systemd

Tienes que poner un ExecStop opción en el [Service] sección con el comando que desea utilizar para detener el servicio.

Algo como:

[Service]
Environment=FLUME_CLASSPATH=/opt/flume/current/lib/
ExecStart=/usr/bin/nohup /usr/bin/flume-ng agent -c /etc/flume-ng/conf -f /etc/flume-ng/conf/flume.conf --name a1 &
ExecStop=/usr/bin/flume-ng agent stop

o cualquiera que sea el comando para detener el flume-ng

Luego puede detener el servicio con systemctl stop flume-ng .

Lea el manual en https://www.freedesktop.org/software/systemd/man/systemd.service.html para conocer el conjunto completo de opciones disponibles para controlar el servicio.


Simplemente puede ejecutar systemctl stop flume-ng.service . Cuando se ejecuta, la acción predeterminada es enviar SIGTERM al proceso principal y esperar hasta un tiempo configurable para ver si los procesos han terminado. Si el proceso no termina, systemd envía SIGKILL señal que hace el trabajo. Si el proceso principal se bifurcó de otros procesos, systemd también los eliminará, ya que todos viven en el mismo cgroup.

No es necesario tener ExecStop= directiva a menos que tenga una forma diferente de cerrar su servicio.


Linux
  1. Cómo usar el comando Systemctl para administrar los servicios de Systemd

  2. Cómo crear un servicio Systemd en Linux

  3. Linux:¿cómo obtener menos Ttys con Systemd?

  4. ¿Cómo empaquetar un servicio Systemd?

  5. ¿Cómo usar Systemd para reiniciar un servicio cuando está inactivo?

Cómo ejecutar contenedores como servicio Systemd con Podman

Cómo iniciar, detener o reiniciar Apache

Cómo iniciar, detener o reiniciar Nginx

Cómo aprendí a dejar de preocuparme y amar systemd

Cómo configurar la ejecución automática de un script de Python usando Systemd

Cómo ejecutar Shell Script como servicio SystemD en Linux