From 5d44582755f2f91bfe7811e4219d73a8a61b12ba Mon Sep 17 00:00:00 2001 From: Kroese Date: Fri, 31 Mar 2023 07:55:38 +0200 Subject: [PATCH] Create service.sh --- agent/service.sh | 49 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 agent/service.sh diff --git a/agent/service.sh b/agent/service.sh new file mode 100644 index 0000000..9fda5f4 --- /dev/null +++ b/agent/service.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +PIDFILE="/var/run/agent.pid" +LOGFILE="/var/log/agent.log" +SCRIPT="/usr/local/bin/agent.sh" + +status() { + if [ -f $PIDFILE ]; then + echo 'Service running' >&2 + return 1 + fi +} + +start() { + if [ -f $PIDFILE ] && kill -0 $(cat $PIDFILE); then + echo 'Service already running' >&2 + return 1 + fi + printf 'Starting agent service...' >&2 + "$SCRIPT" &> "$LOGFILE" & echo $! > "$PIDFILE" +} + +stop() { + if [ ! -f "$PIDFILE" ] || ! kill -0 $(cat "$PIDFILE"); then + echo 'Service not running' >&2 + return 1 + fi + echo 'Stopping agent service' >&2 + kill -15 $(cat "$PIDFILE") && rm -f "$PIDFILE" + echo 'Service stopped' >&2 +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + status) + status + ;; + restart) + stop + start + ;; + *) + echo "Usage: $0 {start|stop|restart}" +esac