KVM / libvirt — Gestion des Machines Virtuelles (virsh)¶
Page libvirt/virsh (Debian/Ubuntu) — pas Proxmox
Cette page documente KVM avec libvirt (virsh) sur un hôte Debian/Ubuntu classique. Si vous cherchez à gérer des VMs sur Proxmox VE, consultez plutôt :
- Proxmox VE — Machines Virtuelles et Conteneurs — commandes
qmetpct
Les commandes virsh s'exécutent sur l'hôte KVM (Debian/Ubuntu avec libvirt).
a. Liste et Informations des Machines Virtuelles¶
-
Lister les VM actives :
virsh list -
Lister toutes les VMs (actives et inactives) :
virsh list --all -
Voir les informations générales d'une VM :
virsh dominfo <nom-vm> -
Voir la configuration XML complète d'une VM :
virsh dumpxml <nom-vm> -
Voir l'état CPU d'une VM :
virsh vcpuinfo <nom-vm> -
Voir l'espace RAM disponible non alloué :
virsh freecell
b. Gestion de l'État des Machines Virtuelles¶
-
Démarrer une VM :
virsh start <nom-vm> -
Arrêter une VM proprement (signal ACPI) :
virsh shutdown <nom-vm> -
Arrêter une VM brutalement :
virsh destroy <nom-vm> -
Redémarrer une VM :
virsh reboot <nom-vm> -
Suspendre une VM (pause CPU, RAM conservée) :
virsh suspend <nom-vm> -
Reprendre une VM suspendue :
virsh resume <nom-vm> -
Sauvegarder l'état RAM d'une VM sur disque :
virsh save <nom-vm> /var/lib/libvirt/saves/<nom-vm>.save -
Restaurer une VM depuis un état sauvegardé :
virsh restore /var/lib/libvirt/saves/<nom-vm>.save
c. Configuration et Autostart¶
-
Éditer la configuration XML d'une VM :
virsh edit <nom-vm> -
Activer le démarrage automatique d'une VM :
virsh autostart <nom-vm> -
Désactiver le démarrage automatique :
virsh autostart --disable <nom-vm> -
Accéder à la console série d'une VM :
virsh console <nom-vm>
💡 Pour quitter la console :
Ctrl+].
d. Snapshots¶
-
Créer un snapshot :
virsh snapshot-create-as <nom-vm> <nom-snapshot> "Description" -
Lister les snapshots d'une VM :
virsh snapshot-list <nom-vm> -
Voir les détails d'un snapshot :
virsh snapshot-info <nom-vm> <nom-snapshot> -
Restaurer un snapshot :
virsh snapshot-revert <nom-vm> <nom-snapshot> -
Supprimer un snapshot :
virsh snapshot-delete <nom-vm> <nom-snapshot>
e. Réseau¶
-
Lister les réseaux virtuels :
virsh net-list --all -
Démarrer un réseau :
virsh net-start <nom-réseau> -
Activer le démarrage automatique d'un réseau :
virsh net-autostart <nom-réseau> -
Voir la configuration d'un réseau :
virsh net-dumpxml <nom-réseau>
f. Stockage¶
-
Lister les pools de stockage :
virsh pool-list --all -
Lister les volumes d'un pool :
virsh vol-list <nom-pool> -
Voir les informations d'un volume :
virsh vol-info /var/lib/libvirt/images/<nom.qcow2>
g. Copie d'un Disque entre Hyperviseurs¶
-
Prérequis : installer
pvetnetcat-openbsdsur les deux machines :apt install pv netcat-openbsd -
Sur le serveur de destination :
Créer une VM vierge avec un disque de taille équivalente, puis exécuter :nc -l -p 18080 -N | pv > /dev/vg_data/<disque-de-la-vm-de-destination> -
Sur le serveur source :
Copier le disque vers le serveur de destination :pv /dev/vg_data/<disque-de-la-vm-source> | nc -q1 <ip-serveur-destination> 18080