# Copyright 1999-2004 Gentoo Foundation
# Modified for PLD by Jan Rêkorajski <baggins@pld-linux.org>
# Distributed under the terms of the GNU General Public License v2
-#
+#
+
+# Source function library
+. /etc/rc.d/init.d/functions
[ -n "$UTIL_VSERVER_VARS" ] || UTIL_VSERVER_VARS=/usr/lib/util-vserver/util-vserver-vars
if [ ! -e "$UTIL_VSERVER_VARS" ] ; then
[ -f /etc/sysconfig/vservers ] && . /etc/sysconfig/vservers
-[ -n "$MARKS" ] || MARKS="default"
[ -n "$NUMPARALLEL" ] || NUMPARALLEL=1
[ -n "$LOCKDIR" ] || LOCKDIR="/var/lock/vservers"
exit 1
fi
- if [ is_yes "$STARTALL" ]; then
+ if is_yes "$STARTALL"; then
if [ ! -f /var/lock/subsys/vservers-all ]; then
show "Starting all types of vservers"
busy
[ $rc -eq 0 ] && touch /var/lock/subsys/vservers-$MARK
done
fi
-
+
for VSERVER in $START_VSERVERS; do
if [ -f /var/lock/subsys/vserver-$VSERVER ]; then
echo "Vserver '$VSERVER' is already startred"
rc=$?
[ $rc -eq 0 ] && touch /var/lock/subsys/vserver-$VSERVER
done
+ touch /var/lock/subsys/vservers
;;
stop)
- for VSERVER in $START_VSERVERS; do
+ __STOP_VSERVERS=
+ for __V in $START_VSERVERS; do
+ __STOP_VSERVERS="$__V $__STOP_VSERVERS"
+ done
+ for VSERVER in $__STOP_VSERVERS; do
if [ ! -f /var/lock/subsys/vserver-$VSERVER ]; then
echo "Vserver '$VSERVER' is not running"
continue
rm -f /var/lock/subsys/vserver-$VSERVER
done
- if [ is_yes "$STARTALL" ]; then
+ if is_yes "$STARTALL"; then
if [ -f /var/lock/subsys/vservers-all ]; then
show "Stopping all types of vservers"
busy
echo "All types of vservers are not running"
fi
else
- for MARK in $MARKS; do
+ __STOP_MARKS=
+ for __V in $MARKS; do
+ __STOP_MARKS="$__V $__STOP_MARKS"
+ done
+ for MARK in $__STOP_MARKS; do
if [ ! -f /var/lock/subsys/vservers-$MARK ]; then
echo "Vservers of type '$MARK' are not running"
continue
rm -f /var/lock/subsys/vservers-$MARK
done
fi
+ rm -f /var/lock/subsys/vservers
;;
status)
echo "The following types of vservers are running:"
-
+
for i in /var/lock/subsys/vservers-*; do
[ -f "$i" ] || continue
echo $i | awk '{gsub("/var/lock/subsys/vservers-",""); printf(" %s\n",$0); }'
- local running="true"
+ running="true"
done
-
+
if [[ "${running}" != "true" ]]; then
echo " none"
fi
-
+
echo
echo "/proc/virtual/ says these are running:"
-
+
for i in /proc/virtual/*; do
[ -d $i ] || continue
NAME=$( basename $( vuname -g --xid $( basename ${i} ) CONTEX ) )
echo " ${NAME}"
done
-
+
echo
echo "vserver-stat says these are running:"
/usr/sbin/vserver-stat
;;
*)
- echo "Usage: $0 {start|stop|restart|status}"
+ echo "Usage: $0 {start|stop|status}"
exit 1
;;
esac