Booting VMDK incremental image.

This is for discussing general topics about how to use VirtualBox.
Post Reply
vigneshrams
Posts: 13
Joined: 5. Jan 2012, 16:50
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: WINDOWS

Booting VMDK incremental image.

Post by vigneshrams »

Hi,

I tried booting Incremental VMDK images but it failed booting. And i found no work-around to do this process. So i thought i could write a plugin that would support booting the Incremental VMDK files in VBOX. Where could i start ? Any help on this.

/Thanks
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: Booting VMDK incremental image.

Post by mpack »

There is no supported way to do it. Officially you should have exported it as a single VMDK before importing into VirtualBox. Unofficially it will work if you register each member of the chain one at a time, in order, in the same VM. Of course you must have the complete chain. This would be an unstable state, so once you got it working I would clone the VM to merge the chain. Or if that fails, use CloneVDI to merge the chain.
ChipMcK
Volunteer
Posts: 1095
Joined: 20. May 2009, 02:17
Primary OS: Mac OS X other
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Windows, OSX
Location: U S of A

Re: Booting VMDK incremental image.

Post by ChipMcK »

the following was developed with VirtualBox's SnapShots in mind,
but it is also applicable in your case

Code: Select all

When a virtual disk is first created for a new virtual machine, it is considered as the base disk for the guest - data for the guest is read from and written to that disk image.

The differencing disk records changes sector-by-sector to the whole disk image, not changes to any file in the disk. VirtualBox does not know what file system is employed on the disk image and therefore can not access any individual file of/on the disk image; only the guest OS is aware of that information.

First SnapShot creates a differencing disk (diffDisk#1) for read/write access while the base disk becomes read-only - as the guest modifies its data, the data is written to the differencing disk and the base disk is untouched.

Second SnapShot creates another, new, differencing disk (diffDisk#2) for read/write access while the first differencing disk (diffDisk#1) becomes read-only along with the base disk.

Subsequent SnapShots create additional differencing disks, with the preceding differencing disk joining the hierarchy (pecking order/chain) of read-only disks.

Keep in mind that access to/from the virtual disks is sector-by-sector, not file-by-file.

When the guest requests that a sector be read, the latest SnapShot is read first. If the sector is not found there (Sector-Not-Found is returned), the next SnapShot in the chain (youngest to oldest) is read, until the base virtual disk is reached. Then the sector on/in the base virtual disk is either read or Sector-Not-Found is returned.

You need all of the chain/hierarchy of files in order to 'boot up'
Last edited by ChipMcK on 30. Sep 2016, 14:19, edited 1 time in total.
vigneshrams
Posts: 13
Joined: 5. Jan 2012, 16:50
Primary OS: MS Windows 7
VBox Version: OSE other
Guest OSses: WINDOWS

Re: Booting VMDK incremental image.

Post by vigneshrams »

Hi ,

Thanks a lot ChipMcK and mpack. I tried attaching all the files in the chain and boot the last incremental but no luck with it. My requirement is to boot the incremental right away without the the need for merging. It works good for VHD but fails to work on VMDK. Any help to make it boot.



/ thanks
Post Reply