Você pode inicializar um VHD
usando BOOTMGR
aqui algumas informações sobre como carregá-lo com 'grub4dos.
Eu acho que deveria ser trivial adaptá-lo ao grub 2, mas não estou confiante com as configurações do grub.
Eu não tentei, mas achei a informação para grub4dos aqui: link
Forme o tópico acima:
native Windows 7 VHD booting goes through BOOTMGR and an entry dedicated to it to this effect in \boot\BCD. It is NOT about VHD booting, it is about booting WINDOWS 7 on VHD.
Normally you have:
C:\BOOTMGR
C:\boot\BCD
C:\Myl33t7.vhd
The booting sequence is as follows:
BIOS->MBR->Active partition bootsector->BOOTMGR->BCD choice mapping C:\Myl33t7.vhd
You can insert grub4dos in any point BEFORE BOOTMGR.
IF you want to have the BOOTMGR and \boot\BCD INSIDE the .vhd, as long as the .vhd is static, you just map the .vhd in grub4dos and chainload the BOOTMGR in it:
find --set-root /Myl33t7.vhd
map /Myl33t7.vhd (hd31)
root (hd31)
chainload /BOOTMGR
boot
The grub4dos mapping is only used in the initial part of the setup to aloow the loading of BOOTMGR and BCD.
Existe outro tutorial mas é em russo, aqui a tradução: link