Subscribe to Windows IT Pro
February 10, 2009 12:00 AM

Q. How can I install Windows 7 or Windows Server 2008 R2 to a virtual hard disk (VHD) file?

Windows IT Pro
InstantDoc ID #101456
Rating: (3)

A. Windows 7 and Server 2008 R2 add the ability for an OS to be installed onto a virtual hard disk (VHD) file to boot physical hardware. To do this, perform the following steps:

  1. Boot from the Windows 7 or Server 2008 R2 media.
  2. Select language options and click Next.
  3. At the Install Now screen, press Shift and F10 simultaneously to open a command prompt window. You'll partition the disks and create your VHD file in this window.
  4. Select the disk and wipe all of its existing content using the following commands.
    diskpart
    list disk
    select disk 0
    clean
  5. Create a 200 MB system partition using the following commands. The Windows 7 and Server 2008 R2 installation procedures normally create this partition automatically.
    create part primary size=200
    format fs=ntfs label="System" quick
    active
  6. Create a partition using the rest of the space on the disk. This partition will hold the VHD files. I call the partition Boot, but you can call whatever makes sense for you. Also, I've used the C drive, but when you boot to the VHD the drive letters will shift. If you assign a different letter, make sure to use the new letter in step 7.
    create part primary
    format fs=ntfs label="Boot" quick
    assign letter=C
  7. Create a VHD file on the C drive. In this example, I've created it as a 25 GB file that is an expandable disk. You can use "type=fixed" instead of "type=expandable" to create a fixed-size VHD. A fixed-size VHD will use space on the physical disk equal to its full size as soon as the VHD is created but will give better performance, so I recommend fixed-size disks for uses other than testing.
    create vdisk file=c:\win7ult.vhd maximum=25000 type=expandable
    select vdisk file=c:\win7ult.vhd
    attach vdisk
    create partition primary
    format fs=ntfs label="Win7Boot" quick
  8. You can now list your volumes with the command
    list vol
    An example list is shown here.

    Click to expand

  9. Exit Diskpart and close the command prompt window by entering the "exit" twice.
  10. Proceed with the installation. When you're asked to select the installation target, choose the VHD partition you created. The installer will warn that you cannot install it on the partition, but you can ignore the warning.

    Click to expand

Installation will now progress as usual. Once installation is finished, you can see that the VHD partition is now the C drive while the partition containing the VHD files is demoted down to the D drive, as shown here. If you look at the contents of the drives, you'll see D contains the VHD file and C, the content of the VHD, looks like a standard drive with a Windows installation. The 200 MB partition you created doesn't have a drive letter and is essentially invisible to the OS.

Click to expand



Booting from a VHD is explained in the following video.


Related Reading

Videos:

Audio:


Check out hundreds more useful Q&As like this in John Savill's FAQ for Windows. Also, watch instructional videos made by John at ITTV.net.

Related Content:

ARTICLE TOOLS

Comments
  • Christophe
    3 years ago
    Feb 23, 2009

    ..... It's working now, I don't know what happened. :)

  • Christophe
    3 years ago
    Feb 23, 2009

    I have installed Win7 in a VHD (expandable, size 75 Go) This all went ok.
    I'm trying to create a second VHD (Win7R2, fixed, 100 Go) but it doesn't want to install.
    What do I have to do to install both Win7 and Win7 Server R2 in 2 VHDs located on the same hard drive ?

    When trying to install on this second VHD called Win7R2.vhd, It's showed as Disk 2 Partition 1 and the installer tells me that Windows cannot be installed to Disk 2 Partition 1.
    When clicking on Show Details, I have the following explanation :
    This computer's hardware may not support booting to this disk. Ensure that the disk's controller is enabled in the computer's BIOS menu.
    I don't understand this error as I already installed Win7 in the other VHD... located on the same hard drive.
    Could anyone help me ?

    Thanks

  • Christopher
    3 years ago
    Feb 10, 2009

    cool many thanks.

    will give it a go soon

You must log on before posting a comment.

Are you a new visitor? Register Here

advertisement

advertisement

Windows is a trademark of the Microsoft group of companies. Windows IT Pro is used by Penton Media Inc. under license from owner.