VMs/lib.sh
2024-02-28 12:09:58 +01:00

35 lines
647 B
Bash

#!/bin/bash -e
function ask_yn() {
local ans
printf "$1 (Y/n) " >&2
read -r ans
case "${ans,,}" in
y*|'') return 0 ;;
*) return 1 ;;
esac
}
RAM="$(free -g | awk '/^Mem:/{print $2 - 2}')"
if [ "$RAM" -le 2 ]; then RAM=2
elif [ "$RAM" -gt 32 ]; then RAM=32; fi
RAM="${RAM}G"
CMD=(
qemu-system-x86_64
-accel kvm
-M q35
-cpu host
-m "2G,maxmem=$RAM"
-vga virtio
-drive if=virtio,file=hda.qcow2
# usb
-device qemu-xhci
# shared memory
-object memory-backend-ram,id=mem,size=2G,share=on
-numa node,memdev=mem
)