iSCSI LUN extents with VirtualDisk (VDI, VHD, VMDK) for istgt

Daisuke Aoyama aoyama at
Sat Aug 11 21:12:07 UTC 2012


I have released istgt-20120811 which supports VirtualBox's VirtualDisk via
If you don't want VBox VD features, you can build it without 
using --with-vbox.

How to build with VBox support:
Install VirtualBox 4, and extract the source of same version of it.
/usr/local/src/virtualbox/*/include is default location of header.
(e.g. /usr/local/src/virtualbox/VirtualBox-4.1.18/include/VBox/vd.h)
If you want to extract to other place, you need specify by --with-vbox=PATH.

# ./counfigure --with-vbox
# ./counfigure --with-vbox=/home/vboxsrc/VirtualBox-4.1.18/include

Required shared libraries are and located in 
You may change this place by --with-vboxlib, but I don't test.

FreeBSD platform, configure use the path if exist:
FreeBSD ports version can handle it by VBOXVD option.
Both using X11 and starting VBox are unnecessary for istgt.
FreeBSD 7.x users can use it with ports/emulators/virtualbox-ose-legacy.
Currently it supports read/write only. Other operation such as creation, 
snapshot, resize are not supported.

How to use:
Specify with appropriate extension to LUN of LogicalUnit section.
It is recommend that you use "Auto" for the size field to prevent creation.
The istgt does not support creation of VDs, you need create the VD before 
starting istgt.

example(one of):
LUN0 Storage /iscsi/istgt-disk.vdi Auto
LUN0 Storage /iscsi/istgt-disk.vhd Auto
LUN0 Storage /iscsi/istgt-disk.vmdk Auto

How to create Virtual Disk:
You can use any size of capacity supported by the VD.
But istgt assumes it has fixed 512bytes/block.

example(one of):
# VBoxManage createhd --filename /iscsi/istgt-disk --size 10240 --format VDI
# VBoxManage createhd --filename /iscsi/istgt-disk --size 10240 --format VHD
# VBoxManage createhd --filename /iscsi/istgt-disk --size 10240 --format 

For more detail written in Japanese:

Daisuke Aoyama

More information about the freebsd-scsi mailing list