Port-xen archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

rc.d script for starting Xen domains



I've attached the rc.d script that I use to automatically start and
shutdown Xen unpriviliged domains.  The following variables may be
set in /etc/rc.conf:

xendomains      This required variable is a whitespace-separated list
                of Xen domains to start/stop, e.g.

                        xendomains="dom1 dom2 dom3"

xendomains_cfg  This optional variable is a format string that represents
                the path to the configuration file for domains.  "%s"
                in the format string is substituted with the name of
                the domain, e.g. xendomains_cfg="/xen/%s/xen.conf".
                The default is "/usr/pkg/etc/xen/%s".

The "xendomains_cfg" shouldn't need to be set if you follow the
convention used by the Xen how-to guide of naming the config files
stored in /usr/pkg/etc/xen after the name of the domain.

        Cheers,

        -- Johnny Lam <jlam%pkgsrc.org@localhost>
#!/bin/sh
#
# $NetBSD$
#
# PROVIDE: xendomains
# REQUIRE: xend
# KEYWORD: shutdown

. /etc/rc.subr

name="xendomains"
ctl_command="/usr/pkg/sbin/xm"
start_cmd="xendomains_start"
stop_cmd="xendomains_stop"

xendomains_start()
{
        echo "Starting xen domains."
        : ${xendomains_cfg="/usr/pkg/etc/xen/%s"}
        for domain in $xendomains; do
                case "$domain" in
                "")     ;;
                *)      file=`printf "${xendomains_cfg}" $domain`
                        if [ -f "$file" ]; then
                                ${ctl_command} create "$file"
                        fi
                        ;;
                esac
        done
}

xendomains_stop()
{
        echo "Stopping xen domains."
        ${ctl_command} shutdown --halt --wait --all
}

load_rc_config $name
run_rc_command "$1"


Home | Main Index | Thread Index | Old Index