]>
Commit | Line | Data |
---|---|---|
ac6da96c | 1 | #!/bin/bash |
8a4b60d9 AT |
2 | # Check which virtualization technology to use |
3 | # We prefer kvm, kqemu, userspace in that order. | |
e5ccf5eb HH |
4 | export PATH=/sbin:/bin:/usr/sbin:/usr/bin |
5 | ||
8a4b60d9 AT |
6 | [[ -x /usr/bin/qemu ]] && BIN=/usr/bin/qemu && ARGS="" |
7 | $(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu " | |
008bb4f2 HH |
8 | [[ -c /dev/kvm && -x /usr/bin/kvm ]] && BIN=/usr/bin/kvm && ARGS="" |
9 | [[ -c /dev/kvm && -x /usr/bin/qemu-kvm ]] && BIN=/usr/bin/qemu-kvm && ARGS="" | |
709302e3 | 10 | [[ -c /dev/kvm && -x /usr/libexec/qemu-kvm ]] && BIN=/usr/libexec/qemu-kvm && ARGS="" |
b7774da9 | 11 | [[ -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="" |
ce999bff | 12 | [[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm" |
8a4b60d9 AT |
13 | |
14 | [[ $BIN ]] || { | |
15 | echo "Could not find a working KVM or QEMU to test with!" >&2 | |
16 | echo "Please install kvm or qemu." >&2 | |
17 | exit 1 | |
18 | } | |
87ae9688 HH |
19 | |
20 | KVERSION=${KVERSION-$(uname -r)} | |
21 | ||
97ff396a | 22 | VMLINUZ="/lib/modules/${KVERSION}/vmlinuz" |
87ae9688 | 23 | |
97ff396a HH |
24 | if ! [ -f "$VMLINUZ" ]; then |
25 | [[ -f /etc/machine-id ]] && read MACHINE_ID < /etc/machine-id | |
26 | ||
27 | if [[ $MACHINE_ID ]] && ( [[ -d /boot/${MACHINE_ID} ]] || [[ -L /boot/${MACHINE_ID} ]] ); then | |
28 | VMLINUZ="/boot/${MACHINE_ID}/$KVERSION/linux" | |
29 | else | |
30 | VMLINUZ="/boot/vmlinuz-${KVERSION}" | |
31 | fi | |
87ae9688 HH |
32 | fi |
33 | ||
bdd62605 | 34 | exec sudo $BIN $ARGS -kernel $VMLINUZ -cpu host "$@" |