Instalacja podstawowych pakietów potrzebnych do funkcjonowania KVM:
apt install qemu-kvm libvirt-daemon bridge-utils virtinst libvirt-daemon-system
Dodatkowe narzędzia:
apt install virt-top libguestfs-tools libosinfo-bin qemu-system virt-manager
Jeżeli zależy nam by maszyna wirtualna miała kontakt z innymi komputerami z sieci należy utworzyć na gospodarzu mostek sieciowy. W tym celu należy edytować plik /etc/network/interfaces
Zakładając, że karta sieciowa wpięta do lokalnej sieci to enp0 a mostek ma mieć oznaczenie br0 tworzymy taką konfigurację:
# Primary network interface
auto enp0
iface enp0 inet manual
# Bridge definitions
auto br0
iface br0 inet dhcp
bridge_ports enp0
bridge_stp off
Po restarcie można zaczynać pracę z KVM
W pliku /etc/libvirt/qemu.conf ustawiamy domyślnego dla Debian Bullseye użytkownika i domyślną grupę:
user = libvirt-qemu
group = libvirt-qemu
Następnie w pliku /etc/group dodajemy naszego użytkownika do grupy libvirt-qemu - dzięki temu będzie mógł zarządzać wirtualizacją.
Problem z zawieszającym się Windows maszynie wirtualnej możemy rozwiązać dodając wpis options kvm ignore_msrs=1 w pliku /etc/modprobe.d/kvm.conf
Następnie należy zrestartować system hosta.
Otwieramy wiersz poleceń jako administrator i wydajemy polecenie bcdedit /set useplatformclock true
Zmiana jest trwała ale wymaga restartu maszyny gościa.