3

I received a single-file VMDK from a vendor that has a virtual appliance for a particular product I'm interested in evaluating.

We run a KVM solution (Proxmox) so I tried converting the file but on that system qemu-img blows up. (I was able to convert (multipart) VMDK files from bitnami without error.)

So I figured I'll just yum install qemu-img on a RHEL 6.3 VM and do it there. But despite the fact that I can file the file just fine when I run qemu-img on it I get this error that it can't open the file:

[root@host dir]# file 1.vmdk 
1.vmdk: VMware4 disk image
[root@host dir]# qemu-img info 1.vmdk 
qemu-img: Could not open 'vmdk'

I've seen some other people post on the interwebs that they've had this problem but none of them seem to have a resolution.

Does anyone have any ideas? I have checked the MD5SUM already.

EDIT1:

[root@host dir]# qemu-img info -f vmdk 1.vmdk 
qemu-img: Could not open '1.vmdk'

EDIT2:

Ran strace per suggestion. Not sure what to look for...

Here is a possible:

ioctl(3, CDROM_DRIVE_STATUS, 0x7fffffff) = -1 ENOTTY (Inappropriate ioctl for device)
4
  • Try qemu-img info -f vmdk 1.vmdk.
    – mgorven
    Oct 23, 2012 at 23:19
  • @mgorven, I tried that too but it doesn't seem to matter.
    – HTTP500
    Oct 23, 2012 at 23:21
  • Try run it under strace to see what's happening: strace -vvvs4096 qemu-img ....
    – mgorven
    Oct 24, 2012 at 17:02
  • In my experience, qemu-img has only been able to handle thick-provisioned "flat" VMDK files, i.e. the entire disk image in a single file. I recommend converting the disk image to raw before trying to use it. May 15, 2013 at 15:57

3 Answers 3

2

I had a similar problem with a file which was given to me. I was said that the file was in qcow format. Here is what I tried first :

% qemu-img convert -f qcow2 box.img -O vdi box.vdi                                                        
qemu-img: Could not open 'box.img': Invalid argument
qemu-img: Could not open 'box.img'
% qemu-img convert -f qcow box.img -O vdi box.vdi                                                         
qemu-img: Could not open 'box.img': Operation not permitted
qemu-img: Could not open 'box.img'

Omiting the file input format finaly worked fine :

% qemu-img convert -O vdi box.img box.vdi
0

I know this thread is a little old but I ran into a similar issue and wanted to share my solution in case it could help someone else. I just received an OVA file from a partner but we were using KVM as well so I couldn't use the file directly. People online said that an OVA file is pretty much a tar with the vmdk in it, but when I extracted the vmdk file from the OVA and tried to convert it, I got the following error:

[root@box ~]# qemu-img convert -f vmdk vm.vmdk -O raw vm.raw
qemu-img: Could not open 'vm.vmdk'
qemu-img: Could not open 'vm.vmdk'

To resolve the issue, I imported the OVA into VM Player (which is free) and then converted the vmdk file that was extracted from there (during the import into VM Player, it said the VM didn't pass compliance checks, so I clicked "Retry" and it imported successfully; which is why I'm assuming it didn't work initially when converting from the OVA vmdk to raw). So try importing your vmdk file into VM Player and see if that will "convert" the vmdk file into a format that qemu-img can read. Hopefully this helps!

1
  • vmware keep changing their vmdk format to make it harder to run these VMs on any other solution, the common practice is to quickly set up a free ESXi machine, import the appliance and then convert it to your KVM system using virt-v2v
    – dyasny
    Oct 4, 2013 at 2:50
0

Similar problem converting vmdk to qcow2 qemu-img: Could not open 'image.vmdk': Could not open backing file: Unknown protocol

I used export to ova/ovf in vmware which made a different vmdk output which qemu-img accepted and converted just fine.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .