From: SKA C. <le...@sk...> - 2006-01-25 22:19:59
|
Very kind of you. I have now had a chance to tweak your script for Slackware and it works very well. Thanks for saving me so much time. ----- Original Message ----- From: "Wolfgang Pichler" <wol...@iv...> To: "Emilda Users Discussion List" <em...@li...> Sent: Sunday, January 22, 2006 4:59 PM Subject: Re: [Emilda] Re: New Emilda install > Scott Leafe wrote: > > > > >I am still working on a suitable rc.zebra file to startup zebrasrv but I can > >start the service manually and emilda seems to function just fine. > > > you can have mine. runs on archlinux, but needs little editing on other dirstris too > > /etc/conf.d/idzebra > > -------------------------------------------------------------------- > ZEBRA_SERVER_TAGS=( emilda ) > > ## > ## SEE 'man yaz-ztest' : > ## automatically configured in /etc/rc.d/idzebra : > ## > ## -p /var/idzebra/<tag>/zebrasrv.pid > ## -l /var/idzebra/<tag>/zebrasrv.log > ## -T -D > ## -d idzebra_<tag> (/etc/hosts.allow) > ## -w ZEBRASRV_<tag>_ROOTDIR > ## -c ZEBRASRV_<tag>_CONFFILE (default: zebra.cfg) > ## ZEBRASRV_<tag>_LISTENON > > ## e.g. <tag> == emilda > > # MUST BE SPECIFIED !!! > # > #ZEBRASRV_emilda_ROOTDIR="/home/idzebra/emilda" > #ZEBRASRV_emilda_LISTENON="tcp:localhost:3000" > # OPTIONAL > #ZEBRASRV_emilda_MOREARGS="-v debug -u httpd -C /etc/ssl/grass_httpd_pem" > > ### > > ZEBRASRV_emilda_ROOTDIR="/home/emilda/idzebra" > ZEBRASRV_emilda_LISTENON="tcp:localhost:3000" > ZEBRASRV_emilda_MOREARGS="-v debug -u httpd" > -------------------------------------------------------------------- > > /etc/rc.d/idzebra > > -------------------------------------------------------------------- > #!/bin/bash > > #define missing display functions void > for i in rm_daemon add_daemon stat_busy stat_fail stat_done > do > if [ "`type -t $i`" != "function" ] ; then > eval $i \(\) \{ : \; \} > fi > done > > DAEMON=`basename $0` > [ "$DAEMON" != "" ] || exit > > # source application-specific settings > [ -f /etc/conf.d/$DAEMON ] || exit 0 > . /etc/conf.d/$DAEMON > > > # ==>> required > DAEMONDESC="IDZebra Server" > DAEMONBIN=/usr/bin/zebrasrv > > [ -x $DAEMONBIN ] || exit > . /etc/rc.conf > . /etc/rc.d/functions > > argx="$1"; shift > eval argi\=\( "${ZEBRA_SERVER_TAGS[@]}" \) > if [ $# -ge 1 ] > then > i=-1; argi=() > while [ $# -ge 1 ]; do > for j in "${ZEBRA_SERVER_TAGS[@]}" > do > [ "$j" = "" ] && continue > [ "$1" != "$j" ] && continue > i=$(($i+1)); argi[$i]="$1" > done > shift > done > fi > case "$argx" in > start) > if [ ${#argi[*]} -ne 0 ] > then > ok=1 > for i in "${argi[@]}" > do > [ -d /var/idzebra/$i ] || continue > eval listenon\=\"\$ZEBRASRV_${i}_LISTENON\" > [ "$listenon" != "" ] || continue > eval zebraroot\=\"\$ZEBRASRV_${i}_ROOTDIR\" > [ "$zebraroot" != "" ] || continue > eval zebraconf\=\"\$ZEBRASRV_${i}_CONFFILE\" > [ "$zebraconf" = "" ] && zebraconf=zebra.cfg > if [ -f /var/idzebra/$i/zebrasrv.pid ]; then > stat_busy "(Re?)Starting $DAEMONDESC $i" > kill `cat /var/idzebra/$i/zebrasrv.pid` >/dev/null 2>&1 > rm -f /var/idzebra/$i/zebrasrv.pid > else > stat_busy "Starting $DAEMONDESC $i" > fi > rm -f /var/idzebra/$i/zebrasrv.log > > eval startit\=\"$DAEMONBIN -T -D -p /var/idzebra/$i/zebrasrv.pid \ > -l /var/idzebra/$i/zebrasrv.log -d idzebra_$i -w $zebraroot \ > -c $zebraconf \$ZEBRASRV_${i}_MOREARGS $listenon\" > > echo $startit > eval $startit \>/dev/null 2\>\&1 > [ -f /var/idzebra/$i/zebrasrv.pid ] && ok=0 > done > if [ $ok -eq 0 ]; then > add_daemon $DAEMON > stat_done > exit 0 > fi > rm_daemon $DAEMON > stat_fail > fi > ;; > stop) > if [ ${#argi[*]} -ne 0 ] > then > ok=1 > for i in "${argi[@]}" > do > if [ -f /var/idzebra/$i/zebrasrv.pid ]; then > stat_busy "Stopping $DAEMONDESC $i" > kill `cat /var/idzebra/$i/zebrasrv.pid` >/dev/null 2>&1 > rm -f /var/idzebra/$i/zebrasrv.pid > else > stat_busy "$DAEMONDESC $i apparently not started" > fi > done > rm_daemon $DAEMON > stat_done > fi > ;; > restart) > if [ ${#argi[*]} -ne 0 ] > then > $0 stop "${argi[@]}" > $0 start "${argi[@]}" > fi > ;; > *) > echo "usage: $0 {start|stop|restart} [ <tag> ... ]" > esac > exit 0 > -------------------------------------------------------------------- > > _______________________________________________ > Emilda mailing list > Em...@li... > http://lists.realnode.com/mailman/listinfo/emilda |