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=
OPTION_NONAMESPACE=
OPTION_INSECURE=
OPTION_DEFAULTTTY=
+OPTION_STRACE=
+OPTION_DEBUG_SYSV=
while true; do
case "$1" in
(----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
done
INITCMD_PREPARE=( $_FAKE_RUNLEVEL "$RUNLEVEL_START" /var/run/utmp )
OPTS_ENV=( "${OPTS_ENV[@]}" PREVLEVEL=N RUNLEVEL="$RUNLEVEL_START" )
+ if test -n "$OPTION_DEBUG_SYSV"; then
+ INITCMD_START=( /bin/bash -x "${INITCMD_START[@]}" )
+ INITCMD_STOP=( /bin/bash -x "${INITCMD_STOP[@]}" )
+ fi
;;
(xplain)
$_CHBIND "${CHBIND_OPTS[@]}" -- \
$_EXEC_ULIMIT "$VSERVER_DIR"/ulimits \
$_VCONTEXT --create "${OPTS_VCONTEXT_CREATE[@]}" -- \
+ ${OPTION_STRACE:+$_STRACE -fF -o /tmp/vserver-start.$$} \
${USE_VNAMESPACE:+$_VNAMESPACE --set -- } \
$_VLIMIT --dir "$VSERVER_DIR"/rlimits --missingok -- \
$_VSCHED --xid self --force "${OPTS_VSCHED[@]}" -- \