#!/bin/sh # chkconfig: - 98 02 # description: The rebootmgr service is monitoring all virtual servers \ # and restart them as need. Virtual servers are using \ # the /sbin/vreboot command to talk with the reboot manager # processname: rebootmgr # config: /etc/vservers . /etc/init.d/functions [ -n "$UTIL_VSERVER_VARS" ] || UTIL_VSERVER_VARS=/usr/share/util-vserver/util-vserver-vars if [ ! -e "$UTIL_VSERVER_VARS" ] ; then echo "Can not find util-vserver installation (the file '$UTIL_VSERVER_VARS' would be expected); aborting..." >&2 exit 1 fi . "$UTIL_VSERVER_VARS" start() { if [ ! -f /var/lock/subsys/rebootmgr ] ; then show "Starting the legacy vserver reboot manager" busy cd $__CONFDIR VSERVERS= for serv in *.conf; do [ -f "$serv" ] || continue serv=`basename $serv .conf` if [ -d $__DEFAULT_VSERVERDIR/$serv ] ; then VSERVERS="$VSERVERS $serv" fi done $_REBOOTMGR --pidfile /var/run/rebootmgr.pid $VSERVERS & touch /var/lock/subsys/rebootmgr ok else msg_already_running "legacy vserver reboot manager" fi } stop() { if [ -f /var/lock/subsys/rebootmgr ] ; then show "Stopping the legacy vserver reboot manager" busy kill $(cat /var/run/rebootmgr.pid) rm -f /var/lock/subsys/rebootmgr rm -f /var/run/rebootmgr.pid ok else msg_not_running "legacy vserver reboot manager" fi } RETVAL=0 # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop start ;; status) if [ -f /var/run/rebootmgr.pid ] ; then if kill -0 $(cat /var/run/rebootmgr.pid); then echo rebootmgr is running else echo rebootmgr is NOT running fi fi ;; *) msg_usage "$0 {start|stop|restart|status}" exit 3 esac exit $RETVAL