#!/usr/bin/pagsh -e ### BEGIN INIT INFO # Provides: apache2 # Required-Start: $local_fs $remote_fs $network $syslog openafs-client # Required-Stop: $local_fs $remote_fs $network $syslog openafs-client # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Start/stop apache2 web server ### END INIT INFO # # Apache kstart wrapper by anders. # SCRIPT=/etc/init.d/apache2.invirt-orig KSTART_PIDFILE=/var/run/k5start-apache2.pid KSTART_KEYTAB=/etc/invirt/keytab export AFSCELL=sipb.mit.edu kstart_start () { TMP_PIDFILE=$(mktemp /tmp/k5start-apache2.pid-XXXXXX) chown www-data "$TMP_PIDFILE" export KRB5CCNAME=$(mktemp /tmp/krb5cc_33.kstart-XXXXXX) chown www-data $KRB5CCNAME /sbin/start-stop-daemon --start --pidfile "$TMP_PIDFILE" -c www-data \ --exec /usr/bin/k5start -- -b -p "$TMP_PIDFILE" \ -f "$KSTART_KEYTAB" -K10 -S afs -I "$AFSCELL" -t \ "daemon/$(hostname -f)" cat "$TMP_PIDFILE" >|"$KSTART_PIDFILE" rm -f "$TMP_PIDFILE" } kstart_stop () { if [ -e $KSTART_PIDFILE ]; then /sbin/start-stop-daemon --stop --pidfile $KSTART_PIDFILE pgrep apache2 >/dev/null && sleep 1 \ && pgrep apache2 >/dev/null && sleep 1 \ && pgrep apache2 >/dev/null && sleep 1 \ && pgrep apache2 >/dev/null && sleep 1 \ && pkill -9 apache2 rm -f $KSTART_PIDFILE else echo -n " ... no kstart pidfile" fi } case "$1" in start) echo -n "Starting kstart for Apache2: k5start" kstart_start echo "." exec "$SCRIPT" start ;; stop) "$SCRIPT" stop echo -n "Stopping kstart for Apache2: k5start" kstart_stop echo "." ;; restart|force-reload) "$0" stop sleep 1 "$0" start ;; *) exec "$SCRIPT" "$@" ;; esac