Enter the namespace earlier so testing for files (like /bin/bash, /etc/init.d/rc...
authorDaniel Hokka Zakrisson <daniel@hozac.com>
Mon, 18 Sep 2006 14:57:43 +0000 (14:57 +0000)
committerDaniel Hokka Zakrisson <daniel@hozac.com>
Mon, 18 Sep 2006 14:57:43 +0000 (14:57 +0000)
git-svn-id: http://svn.linux-vserver.org/svn/util-vserver/trunk@2321 94cd875c-1c1d-0410-91d2-eb244daf1a30

scripts/vserver

index 0a8457f..3aee7c8 100755 (executable)
@@ -195,9 +195,16 @@ else
     VSERVER_NAME=$(basename "$VSERVER_DIR")
 fi
 
+# Create a new namespace when starting the guest
 test "$2" != start -o -n "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" || \
     exec $_VNAMESPACE --new -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}"
 
+# Enter the namespace early so we can test for files inside the guest
+test "$2" != enter -a "$2" != stop -a "$2" != restart -a "$2" != condrestart || \
+    test -n "$OPTION_NONAMESPACE" || isAvoidNamespace "$VSERVER_DIR" || \
+    ! isVserverRunning "$VSERVER_DIR" || \
+    exec $_VNAMESPACE --enter "$VSERVER_DIR" -- $_VSERVER ----nonamespace "${OPTIONS_ORIG[@]}"
+
 . $__PKGLIBDIR/vserver.functions
 case "$2" in
     (start|stop|delete)