Passer au contenu principal

Monter une ou des partitions contenues dans un fichier qcow2

J’ai des images disques qcow2 sur ma machine, qui servent à mes machines virtuelles que j’utilise pour développer.

Pour modifier des fichiers dessus sans avoir besoin de démarrer les VMs, on peut monter les images disques sur le système hôte.

Installer l’outil nécessaire

sudo apt install libguestfs-tools

Monter l’image disque

Monter tout le système de fichier

L’outil guestmount va inspecter les disques à la recherche d’un système d’exploitation et va monter toutes les partitions comme elles seraient montées sur la machine virtuelle.

sudo guestmount -a /path/to/qcow2/image -i /path/to/mount/point

Monter une partition en particulier

sudo guestmount -a /path/to/qcow2/image -m <device> /path/to/mount/point

Exemple réel :

guestmount -a ~luc/.vms/sympa.qcow2 -m /dev/sda1 /mnt/
  • ~luc/.vms/sympa.qcow2 : le chemin vers l’image
  • /dev/sda1 : la partition de la VM à monter
  • /mnt/ : l’endroit où monter la partition

Si vous ne connaissez pas l’identifiant de la partition que vous souhaitez monter, vous pouvez mettre une partition fantaisiste (exemple: /dev/trs) et le message d’erreur vous indiquera les partitions existantes :

libguestfs : erreur  : mount_options: mount_options_stub: /dev/trs: No such file or directory
guestmount: ‘/dev/trs’ could not be mounted.
guestmount : Vouliez-vous monter l'un de ces systèmes de fichiers ?
guestmount:     /dev/sda1 (ext4)
guestmount:     /dev/sda5 (swap)

Démonter l’image disque

umount /mnt/

Tiré de https://www.xmodulo.com/mount-qcow2-disk-image-linux.html.