Libvirt (virsh)

La libvirt est une API permettant de gérer des machines virtuelles en ligne de commande. Il supporte les hyperviseurs Xen, QEmu, KVM , LXC , OpenVZ, VirtualBox et VMware ESX. La lib est accessible dans plusieurs langages de programmation tels que Python, Java, C et Perl. Mais c'est principalement l'utilitaire en ligne de commande virsh qui nous intéresse.

Voir aussi le manuel de la commande virsh.

Pour lister les machines virtuelles actives (allumées) sur le système :

  virsh list

Pour lister les machines virtuelles inactives (à l'arrêt) :

  virsh list --inactive

Pour lister toutes les machines virtuelles :

  virsh list --all

Voir les informations sur une VM :

  virsh dominfo nom-vm

Pour démarrer une VM :

  virsh start nom_vm

Pour arrêter une VM :

  virsh shutdown nom_vm

Pour forcer l'arrêt d'une VM :

  virsh destroy nom_vm

La mise en suspension d'une VM «fige» son fonctionnement. La VM n'est plus exécutée, mais sont état est sauvegardée pour être repris ultérieurement.

Mise en pause de la VM :

  virsh suspend nom_vm

Reprise de la VM :

  virsh resume nom_vm

Voir la liste de tous les réseaux actifs :

  virsh net-list --all

Voir les informations sur un réseau :

  virsh net-info nom_reseau

Désactiver un réseau :

  virsh net-destroy nom_reseau

Activer un réseau :

  virsh net-start default