Назад | Перейти на главную страницу

qemu-img: не удалось открыть $ FILE

Я получил однофайловый VMDK от поставщика, у которого есть виртуальное устройство для конкретного продукта, который я хочу оценить.

Мы запускаем решение KVM (Proxmox), поэтому я попытался преобразовать файл, но в этой системе qemu-img взрывается. (Мне удалось без ошибок конвертировать (составные) файлы VMDK из битнами.)

Так что я решил, что просто установлю qemu-img на виртуальную машину RHEL 6.3 и сделаю это там. Но несмотря на то, что я могу file файл в порядке, когда я запускаю на нем qemu-img, я получаю эту ошибку, что он не может открыть файл:

[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'

Я видел, как некоторые другие люди писали в сети, что у них была эта проблема, но, похоже, ни у одного из них нет решения.

У кого-нибудь есть идеи? Я уже проверил MD5SUM.

РЕДАКТИРОВАТЬ1:

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

РЕДАКТИРОВАТЬ2:

Ran strace на предложение. Не уверен, что искать ...

Вот возможный вариант:

ioctl(3, CDROM_DRIVE_STATUS, 0x7fffffff) = -1 ENOTTY (Inappropriate ioctl for device)

У меня была аналогичная проблема с файлом, который мне дали. Мне сказали, что файл был в формате qcow. Вот что я попробовал сначала:

% 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'

Окончательный отказ от формата ввода файла работал нормально:

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

Аналогичная проблема с преобразованием vmdk в qcow2 qemu-img: не удалось открыть 'image.vmdk': не удалось открыть файл резервной копии: неизвестный протокол

Я использовал экспорт в ova / ovf в vmware, который сделал другой вывод vmdk, который qemu-img принял и конвертировал нормально.

Я знаю, что эта ветка немного устарела, но я столкнулся с аналогичной проблемой и хотел поделиться своим решением, если оно может помочь кому-то другому. Я только что получил файл OVA от партнера, но мы также использовали KVM, поэтому я не мог использовать файл напрямую. Люди в сети говорили, что файл OVA - это в значительной степени tar с vmdk в нем, но когда я извлек файл vmdk из OVA и попытался преобразовать его, я получил следующую ошибку:

[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'

Чтобы решить эту проблему, я импортировал OVA в VM Player (который является бесплатным), а затем преобразовал файл vmdk, который был извлечен оттуда (во время импорта в VM Player он сказал, что виртуальная машина не прошла проверки соответствия, поэтому я щелкнул «Повторите попытку», и он импортирован успешно; поэтому я предполагаю, что изначально он не работал при преобразовании из vmdk OVA в raw). Так что попробуйте импортировать ваш vmdk-файл в VM Player и посмотрите, преобразует ли он vmdk-файл в формат, который может читать qemu-img. Надеюсь, это поможет!