From: Enrico Scholz Date: Fri, 17 Oct 2003 00:43:51 +0000 (+0000) Subject: - added legacy support X-Git-Tag: VERSION_0_10~1222 X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7cbd033705fbb277aefd86eddef05aa2363c554c;p=util-vserver.git - added legacy support - added support for suexec,restart,condrestart,exec,chkconfig,enter,running and status git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@188 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- diff --git a/util-vserver/scripts/vserver b/util-vserver/scripts/vserver index 764e800..5991505 100755 --- a/util-vserver/scripts/vserver +++ b/util-vserver/scripts/vserver @@ -27,12 +27,27 @@ test -e "$UTIL_VSERVER_VARS" || { vserver=$1 cmd=$2 +allow_legacy= + case "$vserver" in ./*) VSERVER_DIR=`pwd`/$vserver;; /*) VSERVER_DIR=$vserver;; - *) VSERVER_DIR=$CONFDIR/$vserver;; + *) VSERVER_DIR=$CONFDIR/$vserver + allow_legacy=1 + ;; esac +if test "$allow_legacy"; then + do_legacy= + test ! -e "$VSERVER_DIR/legacy" || do_legacy=1 + test -d "$VSERVER_DIR" -o ! -e "$CONFDIR/$vserver.conf" || do_legacy=1 + + test -z "$do_legacy" || { + echo $"WARNING: can not find configuration, assuming legacy method" + exec "$_VSERVER_LEGACY" "$@" + } +fi + test -d "$VSERVER_DIR" || { echo "Can not find vserver-setup" exit 1 @@ -46,7 +61,46 @@ fi . $PKGLIBDIR/vserver.functions case "$2" in - start|stop) - . $PKGLIBDIR/vserver.$2 + start|stop|suexec) + shift 2 + . $PKGLIBDIR/vserver.$cmd + ;; + restart) + "$0" "$1" stop + exec "$0" "$1" start + ;; + condrestart) + test ! isVserverRunning "$VSERVER_DIR" || exec "$0" "$1" restart + ;; + exec) + shift 2 + exec "$0" "$vserver" suexec root "$@" + ;; + chkconfig) + shift 2 + exec "$0" "$vserver" suexec root chkconfig "$@" + ;; + enter) + getEnterShell "$VSERVER_DIR" + exec "$0" "$1" suexec root "${ENTER_SHELL[@]}" + ;; + running|status) + if getVserverStatus "$VSERVER_DIR" ctx procnum; then + echo $"Vserver '$1' is running at context '$ctx'" + + if test "$2" = status; then + echo $"Number of processes:" $procnum + echo -n $"Uptime: " + "$_FILETIME" "$VSERVER_DIR/run" + fi + exit 0 + else + echo $"Vserver '$1' is not running" + exit 1 + fi + ;; + *) + echo $"Usage: $0 {start|stop|suexec|restart|condrestart|exec|enter|chkconfig|running|status}" + exit 2 ;; esac