#!/bin/bash # # Startup script for vproxy # # chkconfig: 345 97 11 # description: vproxy is a proxy for executing tasks on the master on behalf of vservers. # processname: vproxy # pidfile: /var/run/vproxy.pid # Source function library. . /etc/rc.d/init.d/functions vproxy=/usr/lib/vserver/vproxy prog=vproxy RETVAL=0 ARGS="" INITLOG_ARGS="" start() { echo -n $"Starting $prog: " daemon $vproxy $ARGS RETVAL=$? echo [ $RETVAL = 0 ] && touch /var/lock/subsys/vproxy for v in $(vserver-list --running) ; do ( eval $(/usr/lib/vserver/printconf.sh --quote $v) /usr/lib/vserver/vproxy send start $v $VSERVERDIR ) done return $RETVAL } stop() { echo -n $"Stopping $prog: " killproc $vproxy -TERM RETVAL=$? echo [ $RETVAL = 0 ] && rm -f /var/lock/subsys/vproxy /var/run/vproxy.pid } # See how we were called. case "$1" in start) status $vproxy >/dev/null 2>&1 if status $vproxy >/dev/null 2>&1 ; then status $vproxy else start fi ;; stop) stop ;; status) status $vproxy RETVAL=$? [ $RETVAL = "0" ] && /usr/lib/vserver/vproxy send status ;; restart) stop start ;; *) echo $"Usage: $prog {start|stop|restart|status}" exit 1 esac exit $RETVAL