Files
xen/tools/hotplug/FreeBSD/rc.d/xendriverdomain.in
T
Olaf Hering 9d628ff6cc tools: Fix install.sh for systemd
On a fedora system, if you run `sudo sh install.sh` you break your
system. The installation clobbers /var/run, a symlink to /run.
A subsequent boot fails when /var/run and /run are different since
accesses through /var/run can't find items that now only exist in /run
and vice-versa.

Skip populating /var/run/xen during make install.
The directory is already created by some scripts. Adjust all remaining
scripts to create XEN_RUN_DIR at runtime.

Use the shell variable XEN_RUN_DIR instead of hardcoded paths.

XEN_RUN_STORED is covered by XEN_RUN_DIR because xenstored is usually
started afterwards.

Reported-by: Jason Andryuk <jandryuk@gmail.com>
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Tested-by: Jason Andryuk <jandryuk@gmail.com>
Reviewed-by: Anthony PERARD <anthony.perard@citrix.com>
2023-05-16 20:03:02 +01:00

47 lines
858 B
Bash

#!/bin/sh
#
# PROVIDE: xendriverdomain
# REQUIRE: DAEMON
#
# Should be run in a driver domain, but not in domain 0.
. /etc/rc.subr
. @XEN_SCRIPT_DIR@/hotplugpath.sh
LD_LIBRARY_PATH="${libdir}"
export LD_LIBRARY_PATH
name="xendriverdomain"
rcvar="xendriverdomain_enable"
start_cmd="xendriverdomain_start"
stop_cmd="xendriverdomain_stop"
extra_commands=""
XLDEVD_PIDFILE="@XEN_RUN_DIR@/xldevd.pid"
load_rc_config $name
: ${xendriverdomain_enable:=no}
xendriverdomain_start()
{
printf "Starting xenservices: xl devd."
mkdir -p "${XEN_RUN_DIR}"
PATH="${bindir}:${sbindir}:$PATH" ${sbindir}/xl devd --pidfile ${XLDEVD_PIDFILE} ${XLDEVD_ARGS}
printf "\n"
}
xendriverdomain_stop()
{
printf "Stopping xl devd.\n"
rc_pid=$(check_pidfile ${XLDEVD_PIDFILE} ${sbindir}/xl)
kill -${sig_stop:-TERM} $rc_pid
wait_for_pids $rc_pid
}
run_rc_command "$1"