-#! /bin/bash
-# $Id$
+# $Id$ --*- sh -*--
# Copyright (C) 2003 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de>
#
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
if ! isVserverRunning "$VSERVER_DIR" S_CONTEXT; then
- echo $"vserver '$VSERVER_NAME' is not running; aborting..."
- umountVserver "$VSERVER_DIR" &>/dev/null || :
+ echo $"vserver '$VSERVER_NAME' is not running; aborting..." >&2
+ test "$OPTION_DEBUG" || exec 2>/dev/null >/dev/null
+ umountVserver "$VSERVER_DIR" || :
+ disableInterfaces "$VSERVER_DIR" || :
exit 1
fi
+set -e
generateOptions "$VSERVER_DIR"
-
set +e
+
+cd "$VSERVER_DIR"/vdir/
execScriptlets "$VSERVER_DIR" "$VSERVER_NAME" pre-stop
cd "$VSERVER_DIR"/vdir/
-"${NICE_CMD[@]}" \
+
+if $_VSERVER_INFO - FEATURE migrate; then
+ ${USE_VNAMESPACE:+$_VNAMESPACE --enter "$S_CONTEXT" -- } \
+ $_VCONTEXT $SILENT_OPT --migrate --chroot --xid "$S_CONTEXT" -- \
+ "${INITCMD_STOP[@]}" && "${INITCMD_STOP_SYNC[@]}" || :
+else
+ "${NICE_CMD[@]}" \
"$_CHBIND" "${CHBIND_OPTS[@]}" \
- "$_CHCONTEXT" "${CHCONTEXT_OPTS[@]}" \
- "$_CAPCHROOT" "${CAPCHROOT_OPTS[@]}" . "${INITCMD_STOP[@]}"
+ "$_EXEC_ULIMIT" "$VSERVER_DIR/ulimits" \
+ ${USE_VNAMESPACE:+$_VNAMESPACE --enter "$S_CONTEXT"} \
+ $_CHCONTEXT_COMPAT "${CHCONTEXT_OPTS[@]}" \
+ "$_CAPCHROOT" "${CAPCHROOT_OPTS[@]}" "." \
+ "${INITCMD_STOP[@]}" && "${INITCMD_STOP_SYNC[@]}" || :
+fi
-"${INITCMD_STOP_SYNC[@]}"
+sendKillSequence "$S_CONTEXT" "${INITKILL_SEQ[@]}"
execScriptlets "$VSERVER_DIR" "$VSERVER_NAME" post-stop