#!/bin/bash # # /etc/init.d/newpki # # Starts the NewPKI daemon # ### BEGIN INIT INFO # Provides: newpki # Required-Start: mysql network # Required-Stop: # Default-Start: 2 3 5 # Default-Stop: # Description: Starts the NewPKI daemon ### END INIT INFO # Shell functions sourced from /etc/rc.status: # rc_check check and set local and overall rc status # rc_status check and set local and overall rc status # rc_status -v ditto but be verbose in local rc status # rc_status -v -r ditto and clear the local rc status # rc_failed set local and overall rc status to failed # rc_failed set local and overall rc status to # rc_reset clear local rc status (overall remains) # rc_exit exit appropriate to overall rc status . /etc/rc.status rc_reset prog="NewPKI" NEWPKI_CONF=/etc/newpki/config.conf NEWPKI_USER=newpki PIDFILE=/var/run/newpki.pid pkistart(){ echo -n "Starting $prog: " if test -e /var/lock/subsys/newpki; then rc_failed rc_status -v return 1 fi newpki-server -config $NEWPKI_CONF -user $NEWPKI_USER -detach -pidfile $PIDFILE ret=$? if [ $ret -eq 0 ]; then rc_status -v touch /var/lock/subsys/newpki else rc_failed rc_status -v fi echo "" return $ret } pkistop(){ rm -f /var/lock/subsys/newpki 2> /dev/null if [ -f $PIDFILE ]; then kill `cat $PIDFILE` rc_status -v return 0 else rc_failed rc_status -v return 1 fi return 0 } pkirestart(){ pkistop sleep 10 pkistart } # See how we were called. case "$1" in start) pkistart ;; stop) pkistop ;; restart) pkirestart ;; *) echo $"Usage: $0 {start|stop|restart}" exit 1 esac exit $?