sudo apt-get install qemu-kvm qemu virt-manager virt-viewer libvirt-bin
modprobe nbd
qemu-nbd -c /dev/nbd0 <vdi-file>
mount /dev/nbd0p1 /mnt
umount /mnt
qemu-nbd -d /dev/nbd0
qemu-nbd —help
Usage: qemu-nbd [OPTIONS] FILE
QEMU Disk Network Block Device Server
-h, —help display this help and exit
-V, —version output version information and exit
Connection properties:
-p, —port=PORT port to listen on (default `10809’)
-b, —bind=IFACE interface to bind to (default `0.0.0.0’)
-k, —socket=PATH path to the unix socket
(default ‘/var/lock/qemu-nbd-DEVICE’)
-e, —shared=NUM device can be shared by NUM clients (default ‘1’)
-t, —persistent don’t exit on the last connection
-v, —verbose display extra debugging information
Exposing part of the image:
-o, —offset=OFFSET offset into the image
-P, —partition=NUM only expose partition NUM
Kernel NBD client support:
-c, —connect=DEV connect FILE to the local NBD device DEV
-d, —disconnect disconnect the specified device
Block device options:
-f, —format=FORMAT set image format (raw, qcow2, …)
-r, —read-only export read-only
-s, —snapshot use FILE as an external snapshot, create a temporary
file with backing_file=FILE, redirect the write to
the temporary one
-l, —load-snapshot=SNAPSHOT_PARAM
load an internal snapshot inside FILE and export it
as an read-only device, SNAPSHOT_PARAM format is
‘snapshot.id=[ID],snapshot.name=[NAME]’, or
‘[ID_OR_NAME]’
-n, —nocache disable host cache
—cache=MODE set cache mode (none, writeback, …)
—aio=MODE set AIO mode (native or threads)
—discard=MODE set discard mode (ignore, unmap)
—detect-zeroes=MODE set detect-zeroes mode (off, on, unmap)