X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=cherokee.init;h=30b40f12624063868d9c177ff0945c21087429e1;hb=9ad9ac92ec9b1240223bd10484358397be3c04b4;hp=8a4870067c3594d19936bc91afd74aef330530aa;hpb=02cb0292c919dab3d73fcabeec86bc34d45f59dd;p=packages%2Fcherokee.git diff --git a/cherokee.init b/cherokee.init index 8a48700..30b40f1 100644 --- a/cherokee.init +++ b/cherokee.init @@ -27,9 +27,7 @@ else exit 0 fi -# See how we were called. -case "$1" in - start) +start() { # Check if the service is already running? if [ ! -f /var/lock/subsys/cherokee ]; then msg_starting "Cherokee Web Server" @@ -37,13 +35,10 @@ case "$1" in # it offers no stdout/stderr logging. workaround exec 2>>/var/log/cherokee/cherokee.log exec 1>&2 - start-stop-daemon --start --exec /usr/sbin/cherokee --pidfile /var/run/cherokee.pid -- -b + start-stop-daemon --start --pidfile /var/run/cherokee.pid --oknodo -b --exec /usr/sbin/cherokee ) RETVAL=$? if [ $RETVAL -eq 0 ]; then - # the pidfile written is wrong when cherokee -b is used. damn - pid=$(/sbin/pidof cherokee) - echo $pid > /var/run/cherokee.pid touch /var/lock/subsys/cherokee ok else @@ -52,15 +47,16 @@ case "$1" in else msg_already_running "Cherokee Web Server" fi - ;; - stop) +} + +stop() { if [ -f /var/lock/subsys/cherokee ]; then # Stop daemons. msg_stopping "Cherokee Web Server" start-stop-daemon --stop --pidfile /var/run/cherokee.pid --oknodo --exec /usr/sbin/cherokee RETVAL=$? if [ $RETVAL -eq 0 ]; then - rm -f /var/run/cherokee.pid /var/lock/subsys/cherokee >/dev/null 2>&1 + rm -f /var/lock/subsys/cherokee >/dev/null 2>&1 ok else fail @@ -68,36 +64,44 @@ case "$1" in else msg_not_running "Cherokee Web Server" fi +} + +condrestart() { + if [ -f /var/lock/subsys/cherokee ]; then + stop + start + else + msg_not_running "Cherokee Web Server" + RETVAL=$1 + fi +} + +RETVAL=0 +# See how we were called. +case "$1" in + start) + start ;; - restart|reload) - $0 stop - $0 start - exit $? + stop) + stop + ;; + restart) + stop + start + ;; + try-restart) + condrestart 0 ;; -# reload) -# if [ -f /var/lock/subsys/cherokee ]; then -# msg_reloading "Cherokee Web Server" -# start-stop-daemon --stop --pidfile /var/run/cherokee.pid --signal HUP && ok || fail -# RETVAL=$? -# else -# msg_not_running "Cherokee Web Server" >&2 -# RETVAL=7 -# fi -# ;; force-reload) - $0 reload - exit $? + condrestart 7 ;; status) status cherokee RETVAL=$? ;; *) - msg_usage "$0 {start|stop|restart|reload|force-reload|status}" + msg_usage "$0 {start|stop|restart|try-restart|force-reload|status}" exit 3 esac exit $RETVAL - -# This must be last line ! -# vi:syntax=sh