From 980600a674e61b624cc2534d556da53f5e20bffe Mon Sep 17 00:00:00 2001 From: Daniel Hokka Zakrisson Date: Thu, 18 Feb 2010 14:37:51 +0000 Subject: [PATCH] Let vserver enter/stop work. git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@2876 94cd875c-1c1d-0410-91d2-eb244daf1a30 --- scripts/vserver | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/scripts/vserver b/scripts/vserver index 8b7e8cb..c9f9f24 100755 --- a/scripts/vserver +++ b/scripts/vserver @@ -165,25 +165,27 @@ test "$cmd" != build || { shift 2; exec $_VNAMESPACE --new -- \ allow_legacy= +vserver="${vserver%%/}" case "$vserver" in - (./*) VSERVER_DIR="`pwd`/$vserver";; - (/*) VSERVER_DIR="$vserver";; - (*) VSERVER_DIR="$__CONFDIR/$vserver" - allow_legacy=1 - ;; + (./*) VSERVER_DIR="`pwd`/$vserver";; + (/*) VSERVER_DIR="$vserver";; + (*) # Check if this is a context id + context=$(vuname --get --xid "$vserver" 2>/dev/null) + if test -d "$context"; then + VSERVER_DIR="$context" + else + VSERVER_DIR="$__CONFDIR/$vserver" + 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" >&2 + exec "$_VSERVER_LEGACY" "$@" + } + fi + ;; esac -VSERVER_DIR="${VSERVER_DIR%%/}" - -if test -n "$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" >&2 - exec "$_VSERVER_LEGACY" "$@" - } -fi test -d "$VSERVER_DIR" || { echo $"\ -- 1.8.1.5