github.com/Cloud-Foundations/Dominator@v0.3.4/init.d/subd.Debian-7 (about) 1 #! /bin/bash --posix 2 # 3 # subd Start up the Dominator subject daemon 4 # 5 # chkconfig: 2345 95 25 6 # description: subd is the Dominator subject daemon. 7 8 ### BEGIN INIT INFO 9 # Provides: subd 10 # Required-Start: $local_fs $network $syslog 11 # Required-Stop: $local_fs $network $syslog 12 # Default-Start: 2 3 4 5 13 # Default-Stop: 0 1 6 14 # Short-Description: Dominator subject daemon 15 ### END INIT INFO 16 17 # /etc/init.d/subd: start and stop the Dominator subject daemon 18 19 # CentOS-6 doesn't provide this, so provide a default. 20 log_daemon_msg () 21 { 22 echo "$@" 23 } 24 25 . /lib/lsb/init-functions 26 27 umask 022 28 29 readonly default_log_dir='/var/log/subd' 30 readonly LOOP_PIDFILE='/var/run/subd.loop.pid' 31 readonly PIDFILE='/var/run/subd.pid' 32 33 DAEMON='/usr/local/sbin/subd' 34 LOG_DIR="$default_log_dir" 35 LOG_QUOTA= 36 LOGBUF_LINES= 37 38 PROG_ARGS= 39 40 [ -f /etc/default/subd ] && . /etc/default/subd 41 42 test -x "$DAEMON" || exit 0 43 44 export PATH="${PATH:+$PATH:}/usr/local/bin:/usr/local/sbin:/usr/sbin:/sbin" 45 46 mkdir -m 0755 -p "$LOG_DIR" 47 48 if [ -n "$LOG_DIR" ] && [ "$LOG_DIR" != "$default_log_dir" ]; then 49 PROG_ARGS="$PROG_ARGS -logDir=$LOG_DIR" 50 fi 51 52 if [ -n "$LOG_QUOTA" ]; then 53 PROG_ARGS="$PROG_ARGS -logQuota=$LOG_QUOTA" 54 fi 55 56 if [ -n "$LOGBUF_LINES" ]; then 57 PROG_ARGS="$PROG_ARGS -logbufLines=$LOGBUF_LINES" 58 fi 59 60 start_loop () 61 { 62 echo "$BASHPID" > "$LOOP_PIDFILE" 63 while true; do 64 "$DAEMON" $PROG_ARGS 65 rm -f "$PIDFILE" 66 sleep 1 67 done 68 } 69 70 case "$1" in 71 start) 72 log_daemon_msg "Starting Dominator subject daemon" "subd" || true 73 (start_loop < /dev/null &> /dev/null &) 74 ;; 75 stop) 76 log_daemon_msg "Stopping Dominator subject daemon" "subd" || true 77 [ -s "$LOOP_PIDFILE" ] && kill -KILL $(cat "$LOOP_PIDFILE") 78 [ -s "$PIDFILE" ] && kill -TERM $(cat "$PIDFILE") 79 rm -f "$LOOP_PIDFILE" "$PIDFILE" 80 ;; 81 82 reload|force-reload) 83 kill -HUP $(cat "$PIDFILE") 84 ;; 85 86 restart) 87 kill -HUP $(cat "$PIDFILE") 88 ;; 89 90 start-if-down) 91 [ -s "$LOOP_PIDFILE" ] && kill -0 $(cat "$LOOP_PIDFILE") &> /dev/null && exit 92 [ -s "$PIDFILE" ] && kill -0 $(cat "$PIDFILE") &> /dev/null && exit 93 log_daemon_msg "Starting Dominator subject daemon" "subd" || true 94 (start_loop < /dev/null &> /dev/null &) 95 ;; 96 97 *) 98 log_action_msg "Usage: /etc/init.d/subd {start|stop|reload|force-reload|restart}" || true 99 exit 1 100 esac 101 102 exit 0