我尝试使用qemu-img命令将在OVA文件中找到的VMDK映像转换为QCOW2格式,但在读取扇区131072时失败并显示错误消息qemu-img:error:无效的参数
user@ubuntu:/tmp$wget ftp://ftp.sanger.ac.uk/pub/databases/Pfam/vm/PfamWeb_20120124.ova user@ubuntu:/tmp$tar xfv PfamWeb_20120124.ova PfamWeb_20120124_2.ovf PfamWeb_20120124_2.mf PfamWeb_20120124_2-disk1.vmdk user@ubuntu:/tmp$qemu-img convert -O qcow2 PfamWeb_20120124_2-disk1.vmdk PfamWeb_20120124_2.qcow2 qemu-img: error while reading sector 131072: Invalid argument user@ubuntu:/tmp$qemu-img --version | grep "qemu-img version" qemu-img version 1.0,Copyright (c) 2004-2008 Fabrice Bellard user@ubuntu:/tmp$dpkg-query -f='${Version}\n' --show qemu-utils 1.0+noroms-0ubuntu14.1 user@ubuntu:/tmp$cat /etc/issue Ubuntu 12.04.1 LTS \n \l
我该如何避免错误?
解决方法
与此相关的
bug在qemu版本1.2.0中得到修复. Ubuntu 12.04有一个较旧的qemu版本,但如果你从源代码安装qemu-img
user@ubuntu:/tmp$sudo apt-get install libglib2.0-dev user@ubuntu:/tmp$wget http://wiki.qemu.org/download/qemu-1.2.0.tar.bz2 user@ubuntu:/tmp$tar xfj qemu-1.2.0.tar.bz2 user@ubuntu:/tmp$cd qemu-1.2.0 user@ubuntu:/tmp/qemu-1.2.0$./configure && make qemu-img
转换运行没有错误
user@ubuntu:/tmp/qemu-1.2.0$cd /tmp user@ubuntu:/tmp$/tmp/qemu-1.2.0/qemu-img convert -O qcow2 PfamWeb_20120124_2-disk1.vmdk PfamWeb_20120124_2.qcow2 user@ubuntu:/tmp$