Montare una immagine disco VDI di VirtualBox (quasi) in loopback

Grazie a questo post (in inglese) ho scoperto che è possibile montare ed accedere ad una o più partizioni contenute in una immagine disco VDI, in una maniera molto simile al loopback: tramite il Network Block Device e le utility di qemu. Verificate che nel sistema sia installato l’eseguibile qemu-nbd, casomai installatelo dal pacchetto qemu-kvm.

qemu-nbd si occupa di collegare una immagine disco ad un device node nbd /dev/nbdX e di esporne al sistema le partizioni contenute come sottodevice.

sudo -i
modprobe nbd

#per collegare il file .vdi al device
qemu-nbd -c /dev/nbd0 <vdi-file>

#per scollegarlo dopo aver smontato i filesystem
qemu-nbd -d /dev/nbd0

Una volta collegata l’immagine appariranno i sottodevice /dev/nbdXpY, ad esempio la partizione che da dentro virtualbox sarebbe /dev/sda1 diverrà accessibile su /dev/nbd0p1, e così via.