#!/bin/bash # Check which virtualization technology to use # We prefer kvm, kqemu, userspace in that order. # This script is based on https://github.com/dracutdevs/dracut/blob/master/test/run-qemu export PATH=/sbin:/bin:/usr/sbin:/usr/bin [[ -x /usr/bin/qemu ]] && BIN=/usr/bin/qemu && ARGS="-cpu max" $(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu -cpu host" [[ -c /dev/kvm && -x /usr/bin/kvm ]] && BIN=/usr/bin/kvm && ARGS="-cpu host" [[ -c /dev/kvm && -x /usr/bin/qemu-kvm ]] && BIN=/usr/bin/qemu-kvm && ARGS="-cpu host" [[ -c /dev/kvm && -x /usr/libexec/qemu-kvm ]] && BIN=/usr/libexec/qemu-kvm && ARGS="-cpu host" [[ -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-cpu max" [[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm -cpu host" [[ $BIN ]] || { echo "Could not find a working KVM or QEMU to test with!" >&2 echo "Please install kvm or qemu." >&2 exit 1 } exec $BIN $ARGS "$@"