Ainda não testei isso, mas é assim que eu entendi que é possível.
Inicialize ao servidor e monte disco rígido externo grande o suficiente para armazenar imagens. Disco rígido do servidor de imagem:
dd if=/dev/sdX bs=4k conv=noerror,sync of=/mount_point_of_extHDD/serverIMG.dd
Então, vamos zerar blocos não utilizados:
file /path/to/serverIMG.dd
Verifique o valor do startsector na saída do comando do arquivo, multiplique-o por 512. Existe o seu valor "offset". Montar imagem:
mount -o loop,rw,offset=<counted_value_here> -t <partitions_filesystem_type> /path/to/serverIMG.dd /mnt/tmp
cat /dev/zero > zeroes.file
rm zeroes.file
Em seguida, desmonte a imagem. Inicialize na máquina onde você tem o VirtualBox instalado, assim você pode modificar a imagem bruta para vhd:
VBoxManage convertfromraw serverIMG.dd serverIMG.vhd --format VHD