1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97
|
#! /bin/sh
### BEGIN INIT INFO
# Provides: lnpd
# Required-Start: $syslog
# Required-Stop: $syslog
# Should-Start: $local_fs $network
# Should-Stop: $local_fs $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop the BrickOS LNP daemon
# Description: Start and stop the lnpd networking protocol daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/sbin/lnpd
DAEMONCONF=/etc/lnpd.conf
DAEMONDEFAULTS=/etc/default/lnpd
NAME=lnpd
DESC="BrickOS LNP Daemon"
# configurable options (overridden by files sourced below)
START_LNPD=No
FIXED_OPT=-d # don't allow to re-fork into new process
OPT_DEBUG=""
OPT_FAST=""
OPT_LOG=""
OPT_TTY=""
test -x $DAEMON || exit 0
# Include lnpd defaults if available
test -f $DAEMONDEFAULTS && . $DAEMONDEFAULTS
# (odd, but) Include lnpd configuration if available
# this is done this way since lnpd can't read its own file.
test -f $DAEMONCONF && . $DAEMONCONF
# Now build the daemon options set
OPT_ALL="$OPT_FAST $OPT_TTY $OPT_LOG $OPT_DEBUG"
set -e
case "$1" in
start)
if [ ! -n "$START_LNPD" -o "$START_LNPD" = "No" ]
then
echo -n "Starting $DESC: Skipped, due to disable in $DAEMONDEFAULTS"
else
echo "$NAME: Starting daemon with options=[$OPT_ALL]"
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet \
--background --make-pidfile --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $FIXED_OPT $OPT_ALL
echo "$NAME."
fi
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile /var/run/$NAME.pid \
--exec $DAEMON
echo "$NAME."
;;
#reload)
#
# If the daemon can reload its config files on the fly
# for example by sending it SIGHUP, do it here.
#
# If the daemon responds to changes in its config file
# directly anyway, make this a do-nothing entry.
#
# echo "Reloading $DESC configuration files."
# start-stop-daemon --stop --signal 1 --quiet --pidfile \
# /var/run/$NAME.pid --exec $DAEMON
#;;
restart|force-reload)
#
# If the "reload" option is implemented, move the "force-reload"
# option to the "reload" entry above. If not, "force-reload" is
# just the same as "restart".
#
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --oknodo --pidfile \
/var/run/$NAME.pid --exec $DAEMON
sleep 1
start-stop-daemon --start --quiet \
--background --make-pidfile --pidfile /var/run/$NAME.pid \
--exec $DAEMON -- $FIXED_OPT $OPT_ALL
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
# echo "Usage: $N {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $N {start|stop|restart|force-reload}" >&2
exit 1
;;
esac
exit 0
|