You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ublinux-init/ublinux/rc.preinit.d/73-qemu

32 lines
1.4 KiB

#!/bin/bash
#
# Initial script for Live operating system
# This script are launching before starting init from linux-live script.
# Current dir allways must be set to root (/)
# All system path must be relative, except initrd dirs
ENABLED=yes
[[ ${ENABLED} == "yes" ]] || exit 0
DEBUGMODE=no
PATH=.:/:/usr/bin:/usr/local/bin:/usr/local/sbin
unset ROOTFS; [[ -d /usr/lib/ublinux ]] || ROOTFS=.
SOURCE=${ROOTFS}/usr/lib/ublinux/functions; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
SOURCE=${ROOTFS}/usr/lib/ublinux/os-config; [[ -f ${SOURCE} ]] && . ${SOURCE} 2>/dev/null || exit 0
debug_mode "$0" "$@"
# if grep -qi qemu /sys/devices/virtual/dmi/id/*vendor; then
# [[ -f usr/lib/systemd/system/qemu-guest-agent.service ]] && ln -sf /usr/lib/systemd/system/qemu-guest-agent.service etc/systemd/system/multi-user.target.wants/qemu-guest-agent.service
# else
# rm -f etc/systemd/system/multi-user.target.wants/qemu-guest-agent.service
# fi
# Применимо для версии пакета qemu < 8.0.0
FILE_UDEV_RULES_QUEMU_GUEST="99-qemu-guest-agent.rules"
if [[ ! -f ${ROOTFS}/usr/lib/udev/rules.d/${FILE_UDEV_RULES_QUEMU_GUEST} ]]; then
cat <<EOF > "${ROOTFS}/usr/lib/udev/rules.d/${FILE_UDEV_RULES_QUEMU_GUEST}"
SUBSYSTEM=="virtio-ports", ATTR{name}=="org.qemu.guest_agent.0", TAG+="systemd" ENV{SYSTEMD_WANTS}="qemu-guest-agent.service"
EOF
fi