1#!/bin/sh 2 3DAEMON="virtlogd" 4EXECFILE="/usr/sbin/$DAEMON" 5PIDFILE="/var/run/$DAEMON.pid" 6 7VIRTLOGD_ARGS="" 8 9# shellcheck source=/dev/null 10[ -r "/etc/default/$DAEMON" ] && . "/etc/default/$DAEMON" 11 12start() { 13 printf 'Starting %s: ' "$DAEMON" 14 # shellcheck disable=SC2086 # we need the word splitting 15 start-stop-daemon -S -q -p "$PIDFILE" -x "$EXECFILE" \ 16 -- -d $VIRTLOGD_ARGS 17 status=$? 18 if [ "$status" -eq 0 ]; then 19 echo "OK" 20 else 21 echo "FAIL" 22 fi 23 return "$status" 24} 25 26stop() { 27 printf 'Stopping %s: ' "$DAEMON" 28 start-stop-daemon -K -q -p "$PIDFILE" -x "$EXECFILE" 29 status=$? 30 if [ "$status" -eq 0 ]; then 31 echo "OK" 32 else 33 echo "FAIL" 34 fi 35 return "$status" 36} 37 38restart() { 39 stop 40 sleep 1 41 start 42} 43 44# On receipt of SIGUSR1 virtlogd will re-exec() its binary, while maintaining 45# all current logs and clients. This allows for live upgrades of the virtlogd 46# service. 47reload() { 48 printf 'Reloading %s: ' "$DAEMON" 49 start-stop-daemon -K -s USR1 -q -p "$PIDFILE" -x "$EXECFILE" 50 status=$? 51 if [ "$status" -eq 0 ]; then 52 echo "OK" 53 else 54 echo "FAIL" 55 fi 56 return "$status" 57} 58 59case "$1" in 60 start|stop|restart|reload) 61 "$1";; 62 *) 63 echo "Usage: $0 {start|stop|restart|reload}" 64 exit 1 65esac 66