[Pkg-xen-changes] r637 - trunk/xen-common/debian
Bastian Blank
waldi at alioth.debian.org
Sun May 10 17:12:06 UTC 2009
Author: waldi
Date: Sun May 10 17:12:06 2009
New Revision: 637
Log:
debian/xen-utils-common.xend.init: Start all daemons.
Modified:
trunk/xen-common/debian/xen-utils-common.xend.init
Modified: trunk/xen-common/debian/xen-utils-common.xend.init
==============================================================================
--- trunk/xen-common/debian/xen-utils-common.xend.init Sun May 10 15:40:36 2009 (r636)
+++ trunk/xen-common/debian/xen-utils-common.xend.init Sun May 10 17:12:06 2009 (r637)
@@ -11,56 +11,123 @@
PATH=/usr/lib/xen-common/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="XEN control daemon"
-XENSTORED_RUN_DIR="/var/run/xenstored"
+
VERSION=$(xen-utils-version -q 2>/dev/null || true)
ROOT=/usr/lib/xen-$VERSION
-DAEMON=$ROOT/bin/xend
+
+XEND="$ROOT"/bin/xend
+XENCONSOLED="$ROOT"/bin/xenconsoled
+XENCONSOLED_PIDFILE="/var/run/xenconsoled.pid"
+XENSTORED="$ROOT"/bin/xenstored
+XENSTORED_DIR="/var/run/xenstored"
+XENSTORED_PIDFILE="/var/run/xenstored.pid"
test "$VERSION" || exit 0
-test -x $DAEMON || exit 0
+test -x "$XEND" || exit 0
test -e /proc/xen/privcmd || exit 0
grep -q "control_d" /proc/xen/capabilities || exit 0
+[ -r /etc/default/xend ] && . /etc/default/xend
+
+. /lib/init/vars.sh
. /lib/lsb/init-functions
-start()
+xend_start()
{
- $DAEMON status && return 0
- $DAEMON start || return 1
+ log_progress_msg "xend"
+ $XEND status && return 1
+ $XEND start || return 2
i=0
while [ $i -lt 10 ]; do
- $DAEMON status && return 0 || true
+ $XEND status && return 0 || true
i=$(($i + 1))
sleep 1
done
- return 1
+ return 2
}
-stop()
+xend_stop()
{
$DAEMON status || return 0
$DAEMON stop || return 1
}
+xenconsoled_start()
+{
+ log_progress_msg "xenconsoled"
+ start-stop-daemon --start --quiet --pidfile "$XENCONSOLED_PIDFILE" --exec "$XENCONSOLED" --test > /dev/null \
+ || return 1
+ start-stop-daemon --start --quiet --pidfile "$XENCONSOLED_PIDFILE" --exec "$XENCONSOLED" -- \
+ $XENCONSOLED_ARGS --pid-file="$XENCONSOLED_PIDFILE" \
+ || return 2
+}
+
+xenstored_start()
+{
+ log_progress_msg "xenstored"
+ start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec "$XENSTORED" --test > /dev/null \
+ || return 1
+ [ -d "$XENSTORED_DIR" ] || mkdir -p "$XENSTORED_DIR"
+ start-stop-daemon --start --quiet --pidfile "$XENSTORED_PIDFILE" --exec "$XENSTORED" -- \
+ $XENSTORED_ARGS --pid-file="$XENSTORED_PIDFILE" \
+ || return 2
+}
+
case "$1" in
start)
- [ -d "$XENSTORED_RUN_DIR" ] || mkdir -p "$XENSTORED_RUN_DIR"
- log_daemon_msg "Starting $DESC" "xend"
- start && log_end_msg 0 || log_end_msg 1
+ log_daemon_msg "Starting $DESC"
+ xenstored_start
+ case "$?" in
+ 0|1) ;;
+ *)
+ log_end_msg 1
+ exit
+ ;;
+ esac
+ xenconsoled_start
+ case "$?" in
+ 0|1) ;;
+ *)
+ log_end_msg 1
+ exit
+ ;;
+ esac
+ xend_start
+ case "$?" in
+ 0|1) ;;
+ *)
+ log_end_msg 1
+ exit
+ ;;
+ esac
+ log_end_msg 0
;;
stop)
- log_daemon_msg "Stopping $DESC" "xend"
- stop && log_end_msg 0 || log_end_msg 1
+ log_daemon_msg "Stopping $DESC"
+ xend_stop
+ case "$?" in
+ 0|1) log_end_msg 0 ;;
+ *) log_end_msg 1 ;;
+ esac
;;
restart|force-reload)
- log_daemon_msg "Restarting $DESC" "xend"
- stop || true
- start && log_end_msg 0 || log_end_msg 1
+ log_daemon_msg "Restarting $DESC"
+ xend_stop
+ case "$?" in
+ 0|1)
+ xend_start
+ case "$?" in
+ 0) log_end_msg 0 ;;
+ *) log_end_msg 1 ;;
+ esac
+ ;;
+ *) log_end_msg 1 ;;
+ esac
;;
*)
echo "Usage: $0 {start|stop|restart|force-reload}" >&2
- exit 1
+ exit 3
;;
esac
More information about the Pkg-xen-changes
mailing list