X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=util-vserver%2Fscripts%2Fvserver;h=7bd68f4b1202065b196b60b3014bef5082a85794;hb=552047c69c293485ce2401ae8bc0c0894b2fb410;hp=c5ea2f1f84459282ef13c87d02e984762b0e80ca;hpb=89cc95833665d7e6adb4e2d9efd7987b294bc1b0;p=util-vserver.git diff --git a/util-vserver/scripts/vserver b/util-vserver/scripts/vserver index c5ea2f1..7bd68f4 100755 --- a/util-vserver/scripts/vserver +++ b/util-vserver/scripts/vserver @@ -119,7 +119,7 @@ function msg() set +e OPTIONS_ORIG=( "$@" ) -tmp=$(getopt -o +sv --long nonamespace,--nonamespace,help,debug,version,sync,verbose,silent -n "$0" -- "$@") || exit 1 +tmp=$(getopt -o +sv --long nonamespace,--nonamespace,--insecure,help,debug,version,sync,verbose,silent -n "$0" -- "$@") || exit 1 eval set -- "$tmp" OPTION_FORCE_SYNC= @@ -127,18 +127,20 @@ OPTION_VERBOSE= OPTION_SILENT= OPTION_DEBUG= OPTION_NONAMESPACE= +OPTION_INSECURE= while true; do case "$1" in - --help) showHelp $0 ;; - --version) showVersion ;; - --debug) OPTION_DEBUG=$1; set -x;; - -v|--verbose) OPTION_VERBOSE=$1;; - -s|--sync) OPTION_FORCE_SYNC=$1;; - --silent) OPTION_SILENT=$1;; - ----nonamespace)OPTION_NONAMESPACE=$1;; - --) shift; break;; - *) echo $"vserver: internal error; arg=='$1'" >&2; exit 1;; + (--help) showHelp $0 ;; + (--version) showVersion ;; + (--debug) OPTION_DEBUG=$1; set -x;; + (-v|--verbose) OPTION_VERBOSE=$1;; + (-s|--sync) OPTION_FORCE_SYNC=$1;; + (--silent) OPTION_SILENT=$1;; + (----nonamespace)OPTION_NONAMESPACE=$1;; + (----insecure) OPTION_INSECURE=1;; + (--) shift; break;; + (*) echo $"vserver: internal error; arg=='$1'" >&2; exit 1;; esac shift done @@ -155,11 +157,11 @@ test "$cmd" != build || { shift 2; exec "$_VSERVER_BUILD" -n "$vserver" "$@"; } allow_legacy= case "$vserver" in - ./*) VSERVER_DIR=`pwd`/$vserver;; - /*) VSERVER_DIR=$vserver;; - *) VSERVER_DIR=$CONFDIR/$vserver - allow_legacy=1 - ;; + (./*) VSERVER_DIR=`pwd`/$vserver;; + (/*) VSERVER_DIR=$vserver;; + (*) VSERVER_DIR=$CONFDIR/$vserver + allow_legacy=1 + ;; esac if test "$allow_legacy"; then @@ -174,7 +176,9 @@ if test "$allow_legacy"; then fi test -d "$VSERVER_DIR" || { - echo "Can not find vserver-setup" + echo $"\ +Can not find vserver-setup; please make sure that the vserver configuration +is located at $VSERVER_DIR/." exit 1 } >&2 @@ -189,53 +193,59 @@ test "$2" != start -o "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" | . $PKGLIBDIR/vserver.functions case "$2" in - start|stop) + (start|stop) shift 2 . $PKGLIBDIR/vserver.$cmd ;; - suexec|restart) + (suexec|restart) shift 2 $cmd "$@" ;; - condrestart) + (condrestart) test ! isVserverRunning "$VSERVER_DIR" || restart ;; - exec) + (exec) shift 2 suexec root "$@" ;; - chkconfig) + (chkconfig) shift 2 suexec root chkconfig "$@" ;; - enter) + (enter) getEnterShell "$VSERVER_DIR" suexec root "${ENTER_SHELL[@]}" ;; - running) + (running) isVserverRunning "$VSERVER_DIR" ;; - unify) + (unify) shift 2 exec $_VUNIFY "$@" "$vserver" ;; - pkg) + (pkg) shift 2 exec $_VPKG "$vserver" "$@" ;; - apt-get|apt-config|apt-cache) + (pkgmgmt) + op=$3 + shift 3 + exec $_PKGMGMT ${op:+--$op} "$@" -- "$vserver" + ;; + + (apt-get|apt-config|apt-cache) export _APT_GET=$2 shift 2 exec $_VAPT_GET -- "$@" ;; - rpm) + (rpm) exec $_VRPM -- "$@" ;; - status) + (status) if getVserverStatus "$VSERVER_DIR" ctx procnum; then msg $"Vserver '$vserver' is running at context '$ctx'" @@ -249,7 +259,7 @@ case "$2" in exit 1 fi ;; - *) + (*) echo $"Usage: $0 {start|stop|suexec|restart|condrestart|exec|enter|chkconfig|running|status}" >&2 exit 2 ;;