======Virtual Machine Manager======
Virt-manager è il pacchetto per la virtualizzazione [[https://packages.debian.org/buster/virt-manager]] che si basa su [[didattici:qemu-kvm|QEMU + KVM]]
{{ :didattici:virtual.png?nolink |}}
**Le cartelle importanti**
/var/lib/libvirt/images/archbang.qcow2
**seguire queste istruzioni**
- Creare nuova macchina virtuale
- Local install media (ISO)
- choose ISO
- ..
- ready to begin the installation
- (SELEZIONARE LA CASELLA) customize configuration before install
- Configurazione: **Boot Options** (IDE CDROM)
====IN CASO DI ERRORE====
error: Failed to start network default
Si deve eseguire questo comando come root
# virsh net-list --all
Se l'output ci dice
default inactive no yes
In tal caso, si deve correggere con un comando che attiva il NAT con un dispositivo di rete virtuale
# virsh net-start default
Al contrario, si ripristina e si ferma con
# virsh net-destroy default
==== hard disk reale ESAURITO ====
(errore: permission denied)
Se vuoi usare un altro disco magazzino esterno, come /media/utente/disco , cioè un disco diverso da quello dove si trova la cartella predefinita per le macchine virtuali (/var/lib/libvirt/images) si potrebbe ottenere un errore: permission denied.
Il file a cui si vuole accedere e le cartelle che costituiscono il percorso che lo compongono devono avere lo stesso proprietario (su Debian libvirt-qemu:libvirt-qemu).
* su -
* mkdir /libvirt
* collegare il disco usb
* può essere utile conservare anche per il futuro la cartella /libvirt
* mount /dev/disco /libvirt
* chown libvirt-qemu:libvirt-qemu /libvirt
* se si desidera aprire un DVD in lettura
* chown libvirt-qemu:libvirt-qemu /libvirt/FILE.ISO (questo è opzionale)
* se si desidera creare un disco fisso virtuale, basta creare la macchina virtuale e al momento del disco (step 4/5)
- Select custom storage
- in basso bottone : Manage
- a sinistra pool: default
- a destra volumes -> buttone: Refresh
- appare un nuovo disco.qcow2
- choose volume
==Arch Linux==
Rispetto a Debian è più difficile installare questo pacchetto su Arch Linux
perché le dipendenze devono essere risolte manualmente
virt-manager qemu libvirt iptables firewalld dnsmasq
oppure **ebtables** al posto di iptables
E' necessario aggiungere se stessi al gruppo utenti
# gpasswd -a fabio kvm
NON PIU' NECESSARIO : Configurare la voce "backend" in questo file con "iptables" oppure "ebtables"
/etc/firewalld/firewalld.conf
Esempio di piccolo script necessario su Arch Linux prima di avviare virt-manager
systemctl start firewalld; sleep 1
systemctl start virtlogd.service; sleep 1
systemctl restart libvirtd.service; sleep 1
# virsh net-start default
==== rete NAT ====
Questo comando legge un file che contiene una configurazione
# virsh net-dumpxml default
default
e5ff3b1b-d883-4094-a2a7-123456789012
====Disco virtuale esaurito ====
Per modificare un disco qcow2 (dopo aver spento la macchina virtuale)
apt install libguestfs-tools
virt-filesystems --long --parts --blkdevs -h -a /var/lib/libvirt/images/archlinux.qcow2
cd /var/lib/libvirt/images
qemu-img create -f qcow2 -o preallocation=metadata outdisk.qcow2 8500M
virt-resize /var/lib/libvirt/images/archlinux.qcow2 outdisk.qcow2
rimuovere vecchia immagine