summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2013-09-30 20:04:47 +0200
committerAlexander Sulfrian <alexander@sulfrian.net>2013-09-30 20:08:33 +0200
commit5e44b974d2458b8a1a0a41ae39092418f4cd206b (patch)
tree4951440585e073341b850ef316a5ab3b9a8cd7b2
parent647c100d54ba3db2e19754830d7a1503d7389f6a (diff)
downloadutil-vserver-netns-5e44b974d2458b8a1a0a41ae39092418f4cd206b.tar.gz
util-vserver-netns-5e44b974d2458b8a1a0a41ae39092418f4cd206b.tar.bz2
util-vserver-netns-5e44b974d2458b8a1a0a41ae39092418f4cd206b.zip
vserver.netns: do not try use netns during stop, if netns does not exists
-rwxr-xr-xvserver.netns9
1 files changed, 8 insertions, 1 deletions
diff --git a/vserver.netns b/vserver.netns
index 713f6c8..8e55c02 100755
--- a/vserver.netns
+++ b/vserver.netns
@@ -123,7 +123,14 @@ if [[ "$ACTION" != "stop" ]]; then
fi
-# stop need to do something after the stop, so no exec here
+# ACTION = stop: if namespace does not exists anymore,
+# do not try to execute vserver in it
+if ! $_IP netns list | grep -q "^$VSERVER_NAME\$"; then
+ exec "$_REAL_VSERVER" "${ARGS[@]}"
+fi
+
+
+# ACTION = stop: need to do something after the stop, so no exec here
"${NETNS[@]}" "$_REAL_VSERVER" "${ARGS[@]}"
ret=$?