#!/bin/sh # # $Id: services.txt,v 1.7 2004/12/13 21:37:34 matt Exp $ # PATH=/usr/local/bin:/usr/sbin:/usr/bin:/bin export PATH if [ -d /var/service ] then SVCDIR=/var/service else if [ -d /service ] then SVCDIR=/service else echo "Can't find your service directory!\n"; SVCDIR="" fi fi case "$1" in start) echo -n "Starting svscan." /usr/bin/env PATH=$PATH \ /usr/sbin/daemon -f /bin/sh -c "svscan $SVCDIR 2>&1 | /usr/local/bin/readproctitle service errors: ................................................................................................................................................................................................................................................................................................................................................................................................................ &" > /dev/null for dir in `ls $SVCDIR` do echo -n " $dir" done echo "." ;; restart) echo -n "Restarting services: " for dir in `ls $SVCDIR` do echo -n " $dir" done svc -t $SVCDIR/* svc -t $SVCDIR/*/log echo "." ;; stop) echo -n "Stopping services: svscan" if [ -f /var/run/svscan.pid ] then kill `cat /var/run/svscan.pid` rm /var/run/svscan.pid else /usr/bin/killall "svscan" fi for dir in `ls $SVCDIR` do echo -n " $dir" done svc -dx $SVCDIR/* svc -dx $SVCDIR/*/log echo "." ;; *) echo "Usage $0 { start | restart | stop }" ;; esac