[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH, v2, 4.0] tools: provide startup script for libxl
On Mon, 2011-03-07 at 16:21 +0000, Ian Jackson wrote: > In Xen 4.0 there is no /etc/init.d/xencommons. This means that in > most situations you don't get xenstored, and xl doesn't work, unless > you do something shonky like starting and then immediately stopping > xend. > > To test xl, my automatic testing system therefore provides its own > init script to start xenstored and xenconsoled. This script was > created by borrowing from /etc/init.d/xend and other init scripts in > various versions of xen.hg. > > Here it is[1], as a new "xencommons" script. The user will still have > to add appropriate rc links, and only a script for Linux is provided. > > We do not want to backport the refactoring of /etc/init.d/xend, so > xend users should not enable this script. > > [1] Copied from osstest.git#78c59993ab536b8c39c5a00a xenlightdaemons. > > Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Looks good, thanks. Acked-by: Ian Campbell <Ian.Campbell@xxxxxxxxxxxxx> > > diff -r 0b16e1d60871 tools/hotplug/Linux/Makefile > --- a/tools/hotplug/Linux/Makefile Wed Jan 26 09:05:53 2011 +0000 > +++ b/tools/hotplug/Linux/Makefile Thu Feb 03 11:49:09 2011 +0000 > @@ -4,6 +4,7 @@ include $(XEN_ROOT)/tools/Rules.mk > # Init scripts. > XEND_INITD = init.d/xend > XEND_SYSCONFIG = init.d/sysconfig.xend > +XENCOMMONS_INITD = init.d/xencommons > XENDOMAINS_INITD = init.d/xendomains > XENDOMAINS_SYSCONFIG = init.d/sysconfig.xendomains > > @@ -65,6 +66,7 @@ install-initd: > [ -d $(DESTDIR)$(CONFIG_DIR)/sysconfig ] || $(INSTALL_DIR) > $(DESTDIR)$(CONFIG_DIR)/sysconfig > $(INSTALL_PROG) $(XEND_INITD) $(DESTDIR)$(CONFIG_DIR)/init.d > $(INSTALL_PROG) $(XEND_SYSCONFIG) $(DESTDIR)$(CONFIG_DIR)/sysconfig/xend > + $(INSTALL_PROG) $(XENCOMMONS_INITD) $(DESTDIR)$(CONFIG_DIR)/init.d > $(INSTALL_PROG) $(XENDOMAINS_INITD) $(DESTDIR)$(CONFIG_DIR)/init.d > $(INSTALL_PROG) $(XENDOMAINS_SYSCONFIG) > $(DESTDIR)$(CONFIG_DIR)/sysconfig/xendomains > > diff -r 0b16e1d60871 tools/hotplug/Linux/init.d/xencommons > --- /dev/null Thu Jan 01 00:00:00 1970 +0000 > +++ b/tools/hotplug/Linux/init.d/xencommons Thu Feb 03 11:49:09 2011 +0000 > @@ -0,0 +1,81 @@ > +#!/bin/bash > +# > +# xencommons Script to start and stop xenstored and xenconsoled > +# FOR USE WITH LIBXL, not xend > +# > +# Author: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> > +# > +# chkconfig: 2345 > +# description: Starts and stops the Xen control daemon. > +### BEGIN INIT INFO > +# Provides: xenstored xenconsoled > +# Required-Start: $syslog $remote_fs > +# Should-Start: > +# Required-Stop: $syslog $remote_fs > +# Should-Stop: > +# Default-Start: 3 4 5 > +# Default-Stop: 1 > +# Default-Enabled: yes > +# Short-Description: Start/stop xenstored and xenconsoled > +# Description: Starts and stops the daemons neeeded for xl/libxenlight > +### END INIT INFO > + > +XENCONSOLED_PIDFILE=/var/run/xenconsoled.pid > + > +shopt -s extglob > +test -f /etc/sysconfig/xend && . /etc/sysconfig/xend > + > +if test "x$1" = xstart && \ > + test -d /proc/xen && \ > + ! test -d /proc/xen/capabilities && \ > + grep ' xenfs$' /proc/filesystems >/dev/null && \ > + ! grep '^xenfs ' /proc/mounts >/dev/null; > +then > + mount -t xenfs xenfs /proc/xen > +fi > + > +if ! grep -q "control_d" /proc/xen/capabilities ; then > + exit 0 > +fi > + > +do_start () { > + test -z "$XENSTORED_ROOTDIR" || export XENSTORED_ROOTDIR > + [[ "$XENSTORED_TRACE" == @(yes|on|1) ]] && export XENSTORED_TRACE > + xenstore-read -s / >/dev/null 2>&1 || xenstored > + > + test -z "$XENCONSOLED_TRACE" || XENCONSOLED_ARGS=" > --log=$XENCONSOLED_TRACE" > + xenconsoled --pid-file=$XENCONSOLED_PIDFILE $XENCONSOLED_ARGS > $XENCONSOLED_OPTIONS > +} > +do_stop () { > + if read 2>/dev/null <$XENCONSOLED_PIDFILE pid; then > + kill $pid > + while kill -9 $pid >/dev/null 2>&1; do sleep 0.1; done > + rm -f $XENCONSOLED_PIDFILE > + fi > +} > + > +case "$1" in > + start) > + do_start > + ;; > + status) > + xenstore-read -s / > + ;; > + stop) > + do_stop > + ;; > + reload) > + echo >&2 'Reload not available; use force-reload'; exit 1 > + ;; > + force-reload|restart) > + do_stop > + do_start > + ;; > + *) > + # do not advertise unreasonable commands that there is no reason > + # to use with this device > + echo $"Usage: $0 {start|stop|status|restart|force-reload}" > + exit 1 > +esac > + > +exit $? > > _______________________________________________ > Xen-devel mailing list > Xen-devel@xxxxxxxxxxxxxxxxxxx > http://lists.xensource.com/xen-devel > _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |