X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvserver;h=da3fbe2ca7acf7f5cc47cca59d4c86a49e2516da;hb=5990e5a2b7fb4100fb45a8036466f2e57b0af46c;hp=289509856483b75342aabc05434cb62bb405055f;hpb=4f018f051311bf7b4d00d286794b4194ef9e6cd7;p=util-vserver.git diff --git a/scripts/vserver b/scripts/vserver index 2895098..da3fbe2 100755 --- a/scripts/vserver +++ b/scripts/vserver @@ -59,8 +59,8 @@ Possible commands are: ... builds a new vserver from scratch delete ... remove a vserver - unify [-R] - ... (de)unify vserver + unify [-R] * + ... (de)unify the vserver with its reference vserver(s). pkg install ... installs package(s) in the vserver @@ -77,8 +77,8 @@ Possible commands are: while 'internalize' means that data and programs from the vserver will be used. - unify * - ... unify the vserver with its reference vserver(s). + hashify + ... hashify the guest. Please report bugs to $PACKAGE_BUGREPORT" @@ -119,7 +119,7 @@ function msg() set +e OPTIONS_ORIG=( "$@" ) -tmp=$(getopt -o +sv --long nonamespace,--nonamespace,--insecure,defaulttty,help,debug,version,sync,verbose,silent -n "$0" -- "$@") || exit 1 +tmp=$(getopt -o +sv --long nonamespace,--nonamespace,--insecure,defaulttty,help,debug,strace,debug-sysv,version,sync,verbose,silent -n "$0" -- "$@") || exit 1 eval set -- "$tmp" OPTION_FORCE_SYNC= @@ -129,6 +129,8 @@ OPTION_DEBUG= OPTION_NONAMESPACE= OPTION_INSECURE= OPTION_DEFAULTTTY= +OPTION_STRACE= +OPTION_DEBUG_SYSV= while true; do case "$1" in @@ -141,6 +143,8 @@ while true; do (----nonamespace)OPTION_NONAMESPACE=$1;; (--defaulttty) OPTION_DEFAULTTTY=$1;; (----insecure) OPTION_INSECURE=1;; + (--strace) OPTION_STRACE=1;; + (--debug-sysv*) OPTION_DEBUG_SYSV=$1;; (--) shift; break;; (*) echo $"vserver: internal error; arg=='$1'" >&2; exit 1;; esac @@ -153,7 +157,8 @@ SELF=( "$0" "${OPTION_ALL[@]}" ) vserver=$1 cmd=$2 -test "$cmd" != build || { shift 2; exec $_VNAMESPACE --new -- "$_VSERVER_BUILD" -n "$vserver" "$@"; } +test "$cmd" != build || { shift 2; exec $_VNAMESPACE --new -- \ + "$_VSERVER_BUILD" $OPTION_DEBUG -n "$vserver" "$@"; } allow_legacy= @@ -189,11 +194,7 @@ Possible solutions: exit 5 } >&2 -if test -e "$VSERVER_DIR"/name; then - read VSERVER_NAME <"$VSERVER_DIR"/name -else - VSERVER_NAME=$(basename "$VSERVER_DIR") -fi +_setVserverName # Create a new namespace when starting the guest test "$2" != start -o -n "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" || \ @@ -205,6 +206,9 @@ test "$2" != enter -a "$2" != stop || \ ! isVserverRunning "$VSERVER_DIR" || \ exec $_VNAMESPACE --enter "$VSERVER_DIR" -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}" +set_init_cwd +cd / + . $__PKGLIBDIR/vserver.functions case "$2" in (start|stop|delete)