想驗證下最新版本的qemu的一些功能,因而將其從qemu-0.12升級到了qemu-1.4,編譯安裝一切都很順利,可是當建立virtual machine時,報錯以下:html
[root@compute-30-02 data3]# virsh create ubuntu.xml error: Failed to create domain from ubuntu.xml error: unknown OS type hvm
首先來看一下,ubuntu.xmlubuntu
<domain type='kvm'> <name>vm1</name> <memory>1048576</memory> <vcpu>4</vcpu> <os> <type arch='x86_64' machine='pc'>hvm</type> <boot dev='cdrom'/> </os> <features> <acpi/> <apic/> <pae/> </features> <clock offset='localtime'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/local/bin/qemu-system-x86_64</emulator> //新編譯安裝的qemu <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/data3/vm1.qcow2'/> <target dev='vda' bus='virtio'/> </disk> <disk type='file' device='cdrom'> <source file='/data3/ubuntu.iso'/> <target dev='hdb' bus='ide'/> </disk> <interface type='network'> <source network='default'/> </interface> <input type='mouse' bus='ps2'/> <graphics type='vnc' port='-1' autoport='yes' keymap='en-us'/> </devices>
網上google了不少解決方法,好比確認kvm,kvm-intel等內核模塊是否加載等,其實這些都不是正確的解決方法,網上到有人說運行virsh capabilities命令。其實,根本的緣由在於qemu的可執行命令必須位於/usr/bin下才行,不然,virsh capabilities找不到其可執行文件,因此報錯了。可見上面配置文件的紅色加粗字體<emulator>/usr/local/bin/qemu-system-x86_64</emulator> ,並不在/usr/bin目錄下,因此解決方法就是在/usr/bin目錄下建一個符號連接就ok了!
一個很是簡單的問題,可能會耗去你很是多的時間,最後發現一點技術含量沒有,可是若是不跨過這道坎,再有技術含量的工做也不能進行,我的感受每一個工做都有其很是重要的做用,小細節決定大成敗!
有的公司一我的作好幾個項目,有的公司好幾我的作一個項目,道理可能就在這吧!api
轉自:http://blog.chinaunix.net/uid-20940095-id-3586811.htmldom
有的時候把libvirtd升級了後..或者qemu從新安裝後ide
virsh list 沒有虛擬機信息..字體
可是ps的看一下..虛擬機都在跑着...並無什麼異常...ui
緣由就是虛擬機xml裏面定義的emulator路徑有問題.google
只要把qemu的路徑定義正確.而後重啓一下libvird服務...虛擬機狀態就都回來了..spa