phyllomeos/post-first-startup-scripts/create-system-vms.sh
Lukas f0aa553e04 create new directories
it follows a cuisine analogy,
with dishes made followed a recipe,
using ingredients
2022-01-03 21:21:23 +01:00

38 lines
1.6 KiB
Bash

#!/bin/bash
# This script can be run as a root user.
# Create then shutdown a diskless virtual machine with qemu-system, without any emulated display, using virt-install.
# It is designed for vfio-pci (pci-passthrough) in mind, and will work any guest systems that has drivers for the passthroughed GPU as well as paravirtualized drivers (Windows, or Linux).
# The ISO that contains paravirtualized drivers for Windows is attached to this virtual machine. The user has to manually add the Windows ISO.
virt-install \
--connect qemu:///system \
--metadata description="Works with any GPUs that is binded to vfio-pci. A GPU needs to be manually attached to the VM. As it uses QEMU system, passthrough will work" \
--os-variant detect=off \
--virt-type kvm \
--arch x86_64 \
--machine q35 \
--name system-windows-vfio-pci \
--boot uefi \
--cpu host-model,topology.sockets=1,topology.cores=1,topology.threads=1 \
--vcpus 1 \
--memory 2048 \
--video none \
--graphics none \
--channel unix,target.type=virtio,target.name=org.qemu.guest_agent.0 \
--autoconsole none \
--console pty,target.type=virtio \
--sound none \
--network type=default,model=virtio \
--controller type=virtio-serial \
--controller type=usb,model=none \
--controller type=scsi,model=virtio-scsi \
--input type=keyboard,bus=virtio \
--input type=tablet,bus=virtio \
--rng /dev/urandom,model=virtio \
--cdrom /usr/share/virtio-win/virtio-win-0.1.171.iso \
--disk none \
--install no_install=yes
virsh destroy system-windows-vfio-pci