image disque QEMU

De Linux France
Aller à : navigation, rechercher

Compacter

Pour réduire la taille occupée par un fichier contenant une image disque (attention, c'est dangereux! Au préalable lire les pages de man et sauvegarder l'image):

  1. utiliser virt-sparsify
  2. utiliser zerofree

Montage

Facile

Utiliser guestmount, lire sa page de man.

Détaillé

... en loopback. Tout ceci fonctionne vraisemblablement avec tous les formats (IMG, qcow, qcow2...).

Au préalable:

  1. arrêter la VM
  2. prendre une copie de sauvegarde du fichier image (cargo)
  3. pré-requis: aucun fs n'est monté dans /media

Puis, en tant que root:

modprobe nbd max_part=8
fuser /dev/nbd* # déterminer le nom du premier fichier spécial /dev/nbd... non utilisé
cd /var/lib/vz/images/VM_ID # cas de Proxmox, répertoire des images QEMU, remplacer "VM_ID" par l'ID de la VM
# cas de libvirt: cd /var/lib/libvirt/images
 
# 127.0.0.1 afin de réduire le risque (par défaut il écoute sur toutes les interfaces)
qemu-nbd -b 127.0.0.1 -c /dev/nbdID_Disponible vm-VM_ID-disk-DSK_ID.qcow2 # remplacer "ID_Disponible" par l'ID d'un fichier spécial
#disponible et "DSK_ID" par l'ID du cargo
 
# ensuite: 2 cas de figure
# cas 1: pas de LVM
 
fdisk /dev/nbdID # pour déterminer le nom de la partition à monter
mount /dev/nbdIDpID_Partition /media
# intervenir dans /media
umount /media
# FIN cas 1 (pas de LVM)
 
# cas 2: LVM
vgscan
vgchange -ay
mount /dev/NomDuVolumeGroup/NomVolumeLogique /Point_de_montage
# intervenir dans /Point_de_montage
umount /Point_de_montage
vgchange -an NomVolume
# FIN cas 2 (LVM)
 
# disposition commune à tous les cas
qemu-nbd -d /dev/nbdID