Montage d'une image disque qcow2 via le protocole Network Block Device (NBD).

Liens :

1/ Insertion d'un module ndb dans le noyau Linux.

En paramètre, max_part : Nombre de partition maximum possible pour une image de type qcow2.

util01@station54:~$ sudo modprobe nbd max_part=8

2/ Le disque virtuel de test est une installation d'une Lubuntu 22.04.

util01@station54:~$ ls -lh ~/PortableVirtualizationUsbKey/usbkey/part2/guest/lubuntu/2204/64/base/vd/vda.qcow2 
-rw-r--r-- 1 util01 util01 19G juil. 29 18:16 /home/util01/PortableVirtualizationUsbKey/usbkey/part2/guest/lubuntu/2204/64/base/vd/vda.qcow2

3/ Connexion à l'image avec NBD.

util01@station54:~$ sudo ~/PortableVirtualizationUsbKey/usbkey/part1/host/lubuntu/2404/64/qemu/9.0.1/qemu-9.0.1/build/qemu-nbd --connect=/dev/nbd0 ~/PortableVirtualizationUsbKey/usbkey/part2/guest/lubuntu/2204/64/base/vd/vda.qcow2

4/ Vérification des partitions.

util01@station54:~$ sudo fdisk /dev/nbd0 -l 
Disque /dev/nbd0 : 100 GiB, 107374182400 octets, 209715200 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xc11df966

Périphérique Amorçage Début       Fin  Secteurs Taille Id Type
/dev/nbd0p1  *         2048 209712509 209710462   100G 83 Linux

5/ Création d'un répertoire de montange

util01@station54:~$ mkdir ddv

6/ Montage de la partition.

util01@station54:~$ sudo mount /dev/nbd0p1 ~/ddv

7/ Vérfication de la partition montée

util01@station54:~$ cd ~/ddv
util01@station54:~/ddv$ ls
bin  boot  dev  etc  home  lib  lib32  lib64  libx32  lost+found  media  mnt  opt  proc  root  run  sbin  snap  srv  swapfile  sys  tmp  usr  var

8/ Création d'un fichier de test.

util01@station54:~/ddv$ cd home/util01/
util01@station54:~/ddv/home/util01$ 
util01@station54:/mnt/data/home/util01$ echo "Fichier de test" > test.txt
util01@station54:~/ddv/home/util01$ echo "Fichier de test" > test.txt
util01@station54:~/ddv/home/util01$ cat test.txt 
Fichier de test

9/ Démonter le répertoire de montage.

util01@station54:~/ddv/home/util01$ cd
util01@station54:~$ 
util01@station54:~$ sudo umount ~/ddv
util01@station54:~$ ls -l ~/ddv
total 0

10/ Déconnexion du NBD.

util01@station54:~$ sudo ~/PortableVirtualizationUsbKey/usbkey/part1/host/lubuntu/2404/64/qemu/9.0.1/qemu-9.0.1/build/qemu-nbd --disconnect /dev/nbd0 
/dev/nbd0 disconnected

11/ Lancer la machine virtuelle et se connecter en ssh sur la machine.

util01@station40:~$ ssh util01@192.168.1.252

12/ Vérifier la présence du fichier de test.

util01@station01:~$ ls -l ~/test.txt 
-rw-rw-r-- 1 util01 util01 16 juil. 29 18:26 /home/util01/test.txt
util01@station01:~$ cat ~/test.txt 
Fichier de test