From 90ccbef4313dc61c97443feee0e917adb4221251 Mon Sep 17 00:00:00 2001 From: DL6ER Date: Tue, 21 Feb 2017 11:18:47 +0100 Subject: [PATCH] pihole-FTL init.d script --- advanced/pihole-FTL.service | 81 ++++++++++++++++++++++++++++++ automated install/basic-install.sh | 10 +++- 2 files changed, 89 insertions(+), 2 deletions(-) create mode 100644 advanced/pihole-FTL.service diff --git a/advanced/pihole-FTL.service b/advanced/pihole-FTL.service new file mode 100644 index 00000000..1fcd9b01 --- /dev/null +++ b/advanced/pihole-FTL.service @@ -0,0 +1,81 @@ +#!/bin/bash +### BEGIN INIT INFO +# Provides: pihole-FTL +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: pihole-FTL daemon +# Description: Enable service provided by pihole-FTL daemon +### END INIT INFO + +FTLUSER=pi +PIDFILE=/var/run/pihole-FTL.pid + +get_pid() { + cat "$PIDFILE" +} + +is_running() { + [ -f "$PIDFILE" ] && ps $(get_pid) > /dev/null 2>&1 +} + +# Start the service +start() { + if is_running; then + echo "pihole-FTL is already running" + else + touch /var/log/pihole-FTL.log /run/pihole-FTL.pid /run/pihole-FTL.port + chmod 0644 /var/log/pihole-FTL.log /run/pihole-FTL.pid /run/pihole-FTL.port + su -c "/usr/bin/pihole-FTL" "$FTLUSER" &> /dev/null + echo + fi +} + +# Stop the service +stop() { + if is_running; then + kill $(get_pid) + for i in {1..10}; do + if ! is_running; then + break + fi + + echo -n "." + sleep 1 + done + echo + + if is_running; then + echo "Not stopped; may still be shutting down or shutdown may have failed" + exit 1 + else + echo "Stopped" + fi + else + echo "Not running" + fi + echo +} + +### main logic ### +case "$1" in + start) + start + ;; + stop) + stop + ;; + status) + status pihole-FTL + ;; + restart|reload|condrestart) + stop + start + ;; + *) + echo $"Usage: $0 {start|stop|restart|reload|status}" + exit 1 +esac + +exit 0 diff --git a/automated install/basic-install.sh b/automated install/basic-install.sh index 715d6e95..8a135e9b 100755 --- a/automated install/basic-install.sh +++ b/automated install/basic-install.sh @@ -1174,10 +1174,13 @@ FTLinstall() { cd /tmp if sha1sum --status --quiet -c "${binary}".sha1; then echo -n "transferred... " + stop_service pihole-FTL install -T -m 0755 /tmp/${binary} /usr/bin/pihole-FTL - touch /var/log/pihole-FTL.log /run/pihole-FTL.pid /run/pihole-FTL.port - chmod 0644 /var/log/pihole-FTL.log /run/pihole-FTL.pid /run/pihole-FTL.port cd "${orig_dir}" + install -T -m 0755 "/etc/.pihole/advanced/pihole-FTL.service" "/etc/init.d/pihole-FTL" + update-rc.d pihole-FTL defaults + # startup on boot + update-rc.d pihole-FTL enable echo "done." return 0 else @@ -1384,6 +1387,9 @@ main() { runGravity + start_service pihole-FTL + enable_service pihole-FTL + echo "::: done." if [[ "${useUpdateVars}" == false ]]; then