[lxc-devel] [PATCH] lxc-destroy container only if it is in the STOPPED state

Dwight Engen dwight.engen at oracle.com
Tue Dec 18 21:12:34 UTC 2012


Currently, lxc-destory will attempt to destroy a container if it is not in
the RUNNING state, but doing so is not good when the container is FROZEN, or
in other transitional states.

Signed-off-by: Dwight Engen <dwight.engen at oracle.com>
---
 src/lxc/lxc-destroy.in | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/lxc/lxc-destroy.in b/src/lxc/lxc-destroy.in
index c72f18a..1527495 100644
--- a/src/lxc/lxc-destroy.in
+++ b/src/lxc/lxc-destroy.in
@@ -94,14 +94,14 @@ if [ ! -d "$lxc_path/$lxc_name" ]; then
     exit 1
 fi
 
-# make sure the container isn't running
-lxc-info -n $lxc_name 2>/dev/null | grep -q RUNNING
-if [ $? -eq 0 ]; then
+# make sure the container is stopped
+state=`lxc-info -n $lxc_name 2>/dev/null | head -1 |awk '{print $2}'`
+if [ $state != "STOPPED" ]; then
     if [ $force -eq 1 ]; then
         lxc-stop -n $lxc_name
         lxc-wait -n $lxc_name -s STOPPED
     else
-        echo "$(basename $0): '$lxc_name' is running; aborted" >&2
+        echo "$(basename $0): '$lxc_name' is $state; aborted" >&2
         exit 1
     fi
 fi
-- 
1.7.12.3





More information about the lxc-devel mailing list