From 9b71e62027ba5e0c9c70cf7166542a4c62b8a2a8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?S=2E=C3=87a=C4=9Flar=20Onur?= Date: Thu, 20 Jan 2011 14:11:30 -0500 Subject: [PATCH] forgot to add --- sliver-initscripts/vinit | 81 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 sliver-initscripts/vinit diff --git a/sliver-initscripts/vinit b/sliver-initscripts/vinit new file mode 100644 index 0000000..9e0c9b7 --- /dev/null +++ b/sliver-initscripts/vinit @@ -0,0 +1,81 @@ +#!/bin/bash +# +# $Id$ +# $URL$ +# +# vinit - trigger the slice-local initscript as installed in /etc/rc.d/vinit.slice +# +# this is unconditionnally installed and activated in the sliver +# but of course nothing is run if the script is not present +# +# note - for practical reasons this is *not* activated through chkconfig +# as the slice has not yet started at that point +# +# historical note +# historically planetlab initscripts have not been required to handle the 'stop' method +# so installing such a script directly as /etc/rc.d/vinit would result in the +# script .. being run a second time at vserver-stop time + + +# Source function library. +. /etc/init.d/functions + +slicescript=/etc/rc.d/init.d/vinit.slice +basename=$(basename $slicescript) +slicename=$(cat /etc/slicename) + +prog="Slice initscript ${basename}@${slicename}" +lockfile=/var/lock/subsys/vinit + +RETVAL=0 + +# xxx todo - redirect all stdout, stderr to /var/log/vinit for user access + +function start() { + if [ ! -x $slicescript ] ; then + echo "vinit@$slicename: no executable $slicescript - ignored" + return 0 + fi + echo $"Starting $prog" + $slicescript start $slicename >& /var/log/vinit & + touch ${lockfile} + return 0 +} + +# the initial model came without a stop function; legacy ... +function stop() { + echo $"Stopping $prog " + killproc $basename + rm -f ${lockfile} +} + +function status () { + if [ -f ${lockfile} ] ; then + echo "$prog seems to have run" + return 0 + else + echo "$prog apparently hasn't run" + return 1 + fi +} + +case "$1" in + start) + start + RETVAL=$? + ;; + stop) + stop + RETVAL=$? + ;; + status) + status + RETVAL=$? + ;; + *) + echo $"Usage: $0 {start|stop|status}" + exit 1 + ;; +esac + +exit $RETVAL -- 2.43.0