Qemu

使用 qemu-img 轉換 VMDK 映像失敗,“讀取扇區 131072 時出錯:參數無效”

  • August 8, 2013

我嘗試使用qemu-img命令將 OVA 文件中的 VMDK 映像轉換為 QCOW2 格式,但失敗並顯示錯誤消息qemu-img:讀取扇區 131072 時出錯:參數無效

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

如何避免錯誤?

與此相關的錯誤已在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$

引用自:https://serverfault.com/questions/429478