You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We've been running into a lot of vmdks lately that give errors similar to this:
>mmls -i vmdk -v "r:\work\images\test.vmdk"
libbfio_file_io_handle_open: unable to open file: \\?\R:\work\images\generated-stream.vmdk.
libbfio_handle_open: unable to open handle.
libvmdk_handle_open_extent_data_file_wide: unable to open file IO handle.
libvmdk_handle_open_extent_data_files: unable to open extent data file: r:\work\images\generated-stream.vmdk.))
>vmdkinfo.exe "r:\work\images\test.vmdk"
vmdkinfo 20240529
VMware Virtual Disk (VMDK) information:
Disk type : Stream optimized
Media size : 1.0 GiB (1073741824 bytes)
Content identifier : 0x70b22f98
Parent content identifier : 0xffffffff
Number of extents : 1
Extent: 1
Filename : generated-stream.vmdk
Type : Sparse
Start offset : 0
Size : 1.0 GiB (1073741824 bytes)
The problem appears to be that the file has been renamed (possibly by the tool that created it). If we
rename the vmdk to "generated-stream.vmdk" then it works properly. Poking around, we found that there's code here
to handle this case for renamed monolithic sparse vmdks. It appears the original file name is used if the one from the extent is not found. Changing this code to also run on the LIBVMDK_DISK_TYPE_STREAM_OPTIMIZED type allows our problem vmdks to be correctly opened.
If you would like a stream optimized vmdk for testing let me know and we can supply one.
The text was updated successfully, but these errors were encountered:
This is likely the same issue from #30 .
We've been running into a lot of vmdks lately that give errors similar to this:
The problem appears to be that the file has been renamed (possibly by the tool that created it). If we
rename the vmdk to "generated-stream.vmdk" then it works properly. Poking around, we found that there's code here
libvmdk/libvmdk/libvmdk_handle.c
Line 783 in 71b8943
to handle this case for renamed monolithic sparse vmdks. It appears the original file name is used if the one from the extent is not found. Changing this code to also run on the LIBVMDK_DISK_TYPE_STREAM_OPTIMIZED type allows our problem vmdks to be correctly opened.
If you would like a stream optimized vmdk for testing let me know and we can supply one.
The text was updated successfully, but these errors were encountered: