VMware {code} Community
j2009
Contributor
Contributor

Using VDDK 6.5 to read local sesparse disks?

Hi. I would like to read blocks from a virtual disk via local .vmdk files (i.e., I can't attach this virtual disk to a VM or access it over the network). I know how to use VDDK to do this when the virtual disks contains -flat and -delta files, but virtual disks containing -sesparse files appear not to work with VDDK 6.5 (see below). My questions:

(i) Is there a trick to getting VDDK working with -sesparse files? (And remember I can't mount the .vmdks or access them remotely; they are local files.) I'm guessing the answer is no.

(ii) Is there any method for doing what I want?

(iii) If the answers to the above are "no," is VMware (or anyone) willing to share the specification of the -sesparse file format? VMware has a nice paper defining -delta files; it would be nice to have the same for --sesparse. If I have a spec for sesparse files I can implement my own library for reading virtual disks containing sesparse files.

Thanks!  E.

Using VixDiskLib (6.5) Release build-7387093

Here's the output from a simple test program. I have confirmed that this virtual disk works just fine when attached to a VM.

VixDiskLib: VixDiskLib_OpenEx: Open a disk. VixDiskLib: Open a disk with standard transport mode.
VixDiskLib: Construct full path to disk.
VixDiskLib: Get local path to: /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk.
VixDiskLib: Open disk: /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk.
DISKLIB-SPARSE: "/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001-sesparse.vmdk" : failed to open (15): Failed to load header.
DISKLIB-LINK  : "/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk" : failed to open (The file specified is not a virtual disk).
DISKLIB-CHAIN : "/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk" : failed to open (The file specified is not a virtual disk).
DISKLIB-LIB   : Failed to open '/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk' with flags 0x1e The file specified is not a virtual disk (15).
VixDiskLib: Detected DiskLib error 15 (The file specified is not a virtual disk).
VixDiskLib: Failed to open disk /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk. Error 16063 (The specified file is not a virtual disk) (DiskLib error 15: The file specified is not a virtual disk) at 4799.
VixDiskLib: VixDiskLib_OpenEx: Cannot open disk /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk. Error 16063 (The specified file is not a virtual disk) (DiskLib error 15: The file specified is not a virtual disk) at 5026.
VixDiskLib: VixDiskLib_Open: Cannot open disk /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk. Error 16063 (The specified file is not a virtual disk) at 5064. line: 77 Failed The specified file is not a virtual disk [16063]

VixDiskLib: VixDiskLib_OpenEx: Open a disk.

(Edited to fix formatting of output, above.)

VixDiskLib: Open a disk with standard transport mode.

VixDiskLib: Construct full path to disk.

VixDiskLib: Get local path to: /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk.

VixDiskLib: Open disk: /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk.

DISKLIB-SPARSE: "/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001-sesparse.vmdk" : failed to open (15): Failed to load header.

DISKLIB-LINK  : "/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk" : failed to open (The file specified is not a virtual disk).

DISKLIB-CHAIN : "/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk" : failed to open (The file specified is not a virtual disk).

DISKLIB-LIB   : Failed to open '/d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk' with flags 0x1e The file specified is not a virtual disk (15).

VixDiskLib: Detected DiskLib error 15 (The file specified is not a virtual disk).

VixDiskLib: Failed to open disk /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk. Error 16063 (The specified file is not a virtual disk) (DiskLib error 15: The file specified is not a virtual disk) at 4799.

VixDiskLib: VixDiskLib_OpenEx: Cannot open disk /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk. Error 16063 (The specified file is not a virtual disk) (DiskLib error 15: The file specified is not a virtual disk) at 5026.

VixDiskLib: VixDiskLib_Open: Cannot open disk /d0/misc/vmware-vix-disklib-distrib/doc/samples/jeremy/data/elewis-dev00_2-000001.vmdk. Error 16063 (The specified file is not a virtual disk) at 5064.

line: 77 Failed The specified file is not a virtual disk [16063]
0 Kudos
1 Reply
Terrs2017
Contributor
Contributor

We meet this problem too, I guess sesparse vmdk fomat is more complex, maybe it cant be open in no-vmfs filesystem. 
0 Kudos