installazione
sudo pacman -S virt-manager
sudo pacman -S qemu-full
sudo pacman -S dnsmasq
suod pacman -S bridge-utils
sudo pacman -S libguestfs
sudo pacman -S openbsd-netcat
sudo pacman -S spice-gtk
sudo usermod -a -G libvirt max
sudo systemctl enable libvirtd.service
sudo systemctl start libvirtd.servicevirt-manager utilizza di default la connesione LXC a cui si connettono le Macchine Virtuali. Per poter creare macchine virtuali alla maniera in cui sono abituato devo creare una nuova connessione tipo QEMU/KVM tramite il percorso File -> Add Connection e ricordarsi di mettere la spunta nelle impostazioni della rete affinche la stessa parta al boot della macchina. QEMU/KVM crea qundi qemu:///system a cui si connete al boot.
creazione di una macchina virtuale
iso utilizzata
Nello specifico ho utilizzato archlinux-2023.10.14-x86_64.ISO.
caratteristiche della VM
- Ram: 2.048 MB;
- Core: 2;
- Hard Disk: 20 GB;
- Rete Virtuale: NAT.
aggiunta cartella condivisa
Aggiungere hardware di tipo Filesystem come segue:
- Driver: virtiofs;
- Source path: /home/max/shared;
- Target path: /shared.
Flaggare Enable shared memory nella scheda Memory. Nella VM aggiungere nel file /etc/fstab la seguente riga:
/shared /<mount-point> virtiofs defaults 0 0spice client
spice permette di collegarsi a macchine virtuali. Tramite virt-manager modifichiamo lo Schermo Spice settando la porta in modo manuale al numero 59** (le ultime 2 cifre a scelta).
integrazione con i3wm
Predisponiamo un tasto rapido per avviare la macchina in modalità Full Screen nel Window Manager i3-wm inserendo la seguente riga nel file di configurazione ~/.config/i3/config:
bindsym $mod+k exec virsh -c qemu:///system start <VM-name> && sleep 2 && spicy -h localhost -p 5903 -fSoprattutto con i3-wm è preferibile spice perchè posso cambiare WorkSpace facilmente mentre con virt-viewer mi crea problemi per l’utilizzo del tasto $mod. Ricordarsi infine di modificare le impostazioni di spice-gtk spuntando grab keyboard when active and focused in modo che la tastiera risponda anche alla macchina host.