Link to home
Start Free TrialLog in
Avatar of maquet
maquet

asked on

diskpart command confusion

I am following a process to create a pc to boot from vhd only.

http://blogs.technet.com/b/keithcombs/archive/2009/05/22/dual-boot-from-vhd-using-windows-7-and-windows-server-2008-r2.aspx 

Part of the diskpart command is to create a vdisk file.
Create vdisk file=c:\7ent.vhd maximum 40960 type=expandable.

I read this as the vhd file will max out at 40gb and the vhd should be large enough to install Window 7.

When all is complete and I do boot from the vhd and check the size of the VHD, it is already 40gb.

What am I missing? What is the point of setting a maximum and type =expandable if the vhd will already be 40gb.

I also tried creating a vhd file only 7gb (large enough to install windows)  If I try to copy above the 7gb I get the message not enough disk space. No being expanded.

Can someone explain this to me?

All help is appreciate.
Avatar of Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Flag of United Kingdom of Great Britain and Northern Ireland image

The VHD that is being booted from will expand to the maximum size specified at creation.  It will revert to the used size when you shut it down.  
When you boot the vhd?  I think it needs to tell the OS that the drive is 40gb for file system reasons.  I think the 'host file' (the vhd itself) will only take up an expandable amount of space on the host volume.  
In answer to your question, storage of the VHD, when the machine is off, it will use less disk space, but also a word of caution here, you must ensure, you have at least the expandable size, to start to boot the machine.

So this process will allow you to boot multiple machines (at different times), as the stored machines will be less.

Some people confuse this with VMware Thin provisioned disks. Where disks start small (due to storage in use) and grow to the max of the disk and stop.
Avatar of maquet
maquet

ASKER

So if boot from a usb stick and look at the size of the vhd it will not be 40 gb?  
ASKER CERTIFIED SOLUTION
Avatar of megaman5
megaman5
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
If you are storing the vhd on a usb disk, and you are not booted to it, it should only show used size plus meta data.  There is no 'expanding and contracting' on boot and shutdown, just a layer of abstraction where the on disk size is kept as small as the data.

Thanks!
If the vhd didnt 'fake' the os thinking that it is 40gb, you would always be out of free space and applications would fail when requesting disk space.  so when you are booted to the vhd, it 'lies' to the os saying that its already 40gb, and just resizes in the background.
when you boot will always be the expandable size.
Avatar of maquet

ASKER

Nice article but I still cannot do what I am trying to do.