Vous devez mettre un ExecStop
option dans le [Service]
section avec la commande que vous souhaitez utiliser pour arrêter le service.
Quelque chose comme :
[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
ou quelle que soit la commande pour arrêter le flume-ng
Ensuite, vous pouvez arrêter le service avec systemctl stop flume-ng
.
Lisez le manuel sur https://www.freedesktop.org/software/systemd/man/systemd.service.html pour l'ensemble complet des options disponibles pour contrôler le service.
Vous pouvez simplement exécuter systemctl stop flume-ng.service
. Lorsqu'elle est exécutée, l'action par défaut envoie SIGTERM
au processus principal et attendez un temps configurable pour voir si les processus ont été terminés. Si le processus ne se termine pas, alors systemd envoie SIGKILL
signal qui fait le travail. Si le processus principal a dérivé d'autres processus, systemd les supprimera également puisqu'ils vivent tous dans le même groupe de contrôle.
Vous n'avez pas besoin d'avoir ExecStop=
directive à moins que vous n'ayez une autre façon d'arrêter votre service.