X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvserver.stop;h=4d637ea4a94ad9c9ef5c203b5acd319f6d768f05;hb=97a127fd10421a30f02d64fca74f4df6acf4a0bd;hp=794ac5c5499840d4239dec30a10998ddcf471d18;hpb=2b8e0679960b50d6511b2ecde8b69afeb2f7402e;p=util-vserver.git diff --git a/scripts/vserver.stop b/scripts/vserver.stop index 794ac5c..4d637ea 100644 --- a/scripts/vserver.stop +++ b/scripts/vserver.stop @@ -71,19 +71,24 @@ if test -n "$_IS_FAKEINIT" && \ ## is implemented elif $_VSERVER_INFO - FEATURE migrate; then "${NICE_CMD[@]}" \ - ${USE_VNAMESPACE:+$_VNAMESPACE --enter "$S_CONTEXT" -- } \ $_VCONTEXT $SILENT_OPT --migrate --chroot --xid "$S_CONTEXT" -- \ "${INITCMD_STOP[@]}" || fail=1 else "${NICE_CMD[@]}" \ "$_CHBIND" "${CHBIND_OPTS[@]}" \ "$_EXEC_ULIMIT" "$VSERVER_DIR/ulimits" \ - ${USE_VNAMESPACE:+$_VNAMESPACE --enter "$S_CONTEXT"} \ $_CHCONTEXT_COMPAT "${CHCONTEXT_OPTS[@]}" \ "$_CAPCHROOT" "${CAPCHROOT_OPTS[@]}" "." \ "${INITCMD_STOP[@]}" || fail=1 fi +# Remove persistent so those contexts can be stopped +$_VATTRIBUTE --set --xid "$S_CONTEXT" --flag ~persistent 2>/dev/null || : +if $_VSERVER_INFO -q "$S_CONTEXT" XIDTYPE static && + $_VSERVER_INFO - FEATURE vnet; then + $_NATTRIBUTE --set --nid "$S_CONTEXT" --flag ~persistent 2>/dev/null || : +fi + vshelper.doStopSync waitForSync "$VSERVER_DIR" "$sync_fifo" "$vwait_statdir"