Libvirt
Installation des paquets
dnf install virt-install libvirt-python libvrt-client libvrt-daemon libvirt-daemon-ddriver-qemu qemu-kvm qemu-img
Démarrer les services libvrtd et virtlogd
Création de la machine virtuelle
Exemple pour l'installation de debian 8 depuis les dépots d'images
virt-install \
--name=mail \
--file=/var/lib/libvirt/images/mail.dsk \
--file-size=8 \
--vcpus=2 --ram=2048 \
--location http://cdn-fastly.deb.debian.org/debian/dists/jessie/main/installer-amd64/ \
--extra-args "console=ttyS0,115200n8 serial" \
--os-type linux \
--os-variant generic \
--network bridge=virbr0 \
--graphics none \
--console pty,target_type=serial
Repertoires partagés
Configuration de l'host
/etc/libvirt/qemu.conf trouver et décommenter les lignes
#user = "root"
#group = "root"
#dynamic_ownership = 1
Modier ensuite les valeurs pour
user = "qemu" #Ou l'utilisateur avec lequel qemu est censé être lancé
group = "qemu" #Idem
dynamic_ownership = 0 #Requis pour les configurations qui vont suivre
Redémarrer libvirt systemctl restart libvirtd.
Modifier ensuite les paramètre de la VM (virsh edit [domain]) et rajouter dans le noeud <devices>
<filesystem type='mount' accessmode='mapped'>
<source dir='/data/mails'/> <!-- Répertoire a partager (sur l'host) -->
<target dir='sharedDirMails'/> <!-- label avec lequel le périphérique virtuel va être accessible -->
</filesystem>
/data/mails avec qemu:qemu comme propriétaire.
Redémarrer la machine virtuelle virsh reboot [domain].
Configuration du guest
/etc/modules pour être sur que les bons modules soient chargés :
# cat >>/etc/modules <<EOF
loop
virtio
9p
9pnet
9pnet_virtio
EOF
Charger les modules systemctl restart kmod
Créer le répertoire /opt/share/mails
Le répertoire peut maintenant être monté mount sharedDirMails /opt/share/mail -t 9p -o trans=virtio,version=9p2000.L
Pour monter le répertoire au démarrage de la VM, editer /etc/fstab en ajoutant
sharedDirMails /opt/share/mails 9p trans=virtio,version=9p2000.L 0 2
Commandes utiles
virsh list --all : liste toutes les vm peut importe l'état
virsh shutdown [domain] virsh reboot [domain] virsh start [domain] : arrete / redémarre ou démarre la vm [domain]
virsh destroy [domain] : force l'arret de la machine
virsh undefine [domain] : oublie la vm [domain]
virsh net-dhcp-leases --network default : récupère la liste des leases dhcp pour le réseau par défaut
Liens utils
https://raymii.org/s/articles/virt-install_introduction_and_copy_paste_distro_install_commands.html http://rabexc.org/posts/p9-setup-in-libvirt http://www.linux-kvm.org/page/9p_virtio