: ${UTIL_VSERVER_VARS:=/usr/lib/util-vserver/util-vserver-vars}
test -e "$UTIL_VSERVER_VARS" || {
- echo "Can not find util-vserver installation; aborting..."
+ echo "Can not find util-vserver installation; aborting..." >&2
exit 1
}
. "$UTIL_VSERVER_VARS"
set +e
-tmp=$(getopt -o +sv --long help,debug,version,sync,verbose,silent -n "$0" -- "$@") || exit 1
+OPTIONS_ORIG=( "$@" )
+tmp=$(getopt -o +sv --long nonamespace,--nonamespace,help,debug,version,sync,verbose,silent -n "$0" -- "$@") || exit 1
eval set -- "$tmp"
OPTION_FORCE_SYNC=
OPTION_VERBOSE=
OPTION_SILENT=
OPTION_DEBUG=
+OPTION_NONAMESPACE=
while true; do
case "$1" in
--help) showHelp $0 ;;
--version) showVersion ;;
- --debug) OPTION_DEBUG=$1; set -x; shift;;
- -v|--verbose) OPTION_VERBOSE=$1; shift;;
- -s|--sync) OPTION_FORCE_SYNC=$1; shift;;
- --silent) OPTION_SILENT=$1; shift;;
+ --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'"; exit 1;;
+ *) echo $"vserver: internal error; arg=='$1'" >&2; exit 1;;
esac
+ shift
done
OPTION_ALL=( $OPTION_SILENT $OPTION_VERBOSE $OPTION_DEBUG )
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"
+ echo $"WARNING: can not find configuration, assuming legacy method" >&2
exec "$_VSERVER_LEGACY" "$@"
}
fi
test -d "$VSERVER_DIR" || {
echo "Can not find vserver-setup"
exit 1
-}
+} >&2
if test -e "$VSERVER_DIR"/name; then
read VSERVER_NAME <"$VSERVER_DIR"/name
VSERVER_NAME=$(basename "$VSERVER_DIR")
fi
+test "$2" != start -o "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" || \
+ exec $_VNAMESPACE --new -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}"
+
. $PKGLIBDIR/vserver.functions
case "$2" in
start|stop)
fi
;;
*)
- echo $"Usage: $0 {start|stop|suexec|restart|condrestart|exec|enter|chkconfig|running|status}"
+ echo $"Usage: $0 {start|stop|suexec|restart|condrestart|exec|enter|chkconfig|running|status}" >&2
exit 2
;;
esac