X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=util-vserver%2Fscripts%2Fstart-vservers;h=182a8ebcd8fe7932f90e167eada854579dcbfd16;hb=d45518897217889e8571d94d4459ee12c4db56a0;hp=960ee68110976fe2ba295ec43fa722a419a30afa;hpb=8d9ef2531945fa907484af62431ab5ff8a74f7c1;p=util-vserver.git diff --git a/util-vserver/scripts/start-vservers b/util-vserver/scripts/start-vservers index 960ee68..182a8eb 100755 --- a/util-vserver/scripts/start-vservers +++ b/util-vserver/scripts/start-vservers @@ -101,6 +101,18 @@ test -n "$OPTION_FLAVOR" || { vservers=( "$@" ) test -z "$OPTION_ALL" || getAllVservers vservers +orig_vservers=$vservers +i=${#vservers[*]} + +while test $i -gt 0; do + let --i + d=$CONFDIR/${vservers[$i]}/apps/init + f=$d/mark + { test "$OPTION_MARK" -a -r "$f" && grep -qx "$OPTION_MARK" "$f"; } || \ + { test -z "$OPTION_MARK" && test ! -e "$f"; } || \ + unset vservers[$i] +done + makedir=$(mktemp -d /tmp/vserver-init.XXXXXX) okfile=$(mktemp /tmp/vserver-init.XXXXXX) passedfile=$(mktemp /tmp/vserver-init.XXXXXX) @@ -116,7 +128,6 @@ case "$OPTION_FLAVOR" in stop) test_cmd="! ${_VSERVER} --silent '\$*' status";; esac - { cat <$makedir/Makefile -orig_vservers=$vservers -i=${#vservers[*]} - -while test $i -gt 0; do - let --i - d=$CONFDIR/${vservers[$i]}/apps/init - { test "$OPTION_MARK" && grep -qx "$OPTION_MARK" "$d"/mark; } || \ - { test -z "$OPTION_MARK" && test ! -e "$d"/mark; } || \ - unset vservers[$i] -done - for i in "${vservers[@]}"; do d=$CONFDIR/$i/apps/init echo "$i" @@ -185,4 +185,4 @@ make -k ${NOOPTION_DEBUG:+-s} ${OPTION_PARALLEL:+-j$OPTION_PARALLEL} -C $makedir test -s "$passedfile" || exit 0 test -s "$okfile" || exit 1 cmp -s "$passedfile" "$okfile" || exit 2 -exit 0 \ No newline at end of file +exit 0