码迷,mamicode.com
首页 > 其他好文 > 详细

[virsh] error: unknown OS type hvm解决办法

时间:2015-04-22 20:25:31      阅读:434      评论:0      收藏:0      [点我收藏+]

标签:

今天在linux服务器上编译安装升级了下qemu,升级命令如下:

root@ubuntu:/opt/qemu-2.0.0# ./configure  --prefix=/usr/local/ --target-list=x86_64-softmmu
root@ubuntu:/opt/qemu-2.0.0# make
root@ubuntu:/opt/qemu-2.0.0# make install

顺利编译安装后,去define了一个虚拟机,结果报了如下错误:

root@ubuntu:~# virsh define test.xml 
error: Failed to define domain from test.xml
error: unknown OS type hvm

好奇怪,便查看了下domain capabilities,命令:

root@ubuntu:~# virsh capabilities
<capabilities>

  <host>
    <uuid>44454c4c-4e00-1038-8050-b2c04f5a3258</uuid>
    <cpu>
      <arch>x86_64</arch>
      <model>Nehalem</model>
      <vendor>Intel</vendor>
      <topology sockets=1 cores=4 threads=1/>
      <feature name=rdtscp/>
      <feature name=dca/>
      <feature name=xtpr/>
      <feature name=tm2/>
      <feature name=est/>
      <feature name=vmx/>
      <feature name=ds_cpl/>
      <feature name=monitor/>
      <feature name=pbe/>
      <feature name=tm/>
      <feature name=ht/>
      <feature name=ss/>
      <feature name=acpi/>
      <feature name=ds/>
      <feature name=vme/>
    </cpu>
    <power_management/>
    <migration_features>
      <live/>
      <uri_transports>
        <uri_transport>tcp</uri_transport>
      </uri_transports>
    </migration_features>
    <topology>
      <cells num=2>
        <cell id=0>
          <cpus num=4>
            <cpu id=0/>
            <cpu id=2/>
            <cpu id=4/>
            <cpu id=6/>
          </cpus>
        </cell>
        <cell id=1>
          <cpus num=4>
            <cpu id=1/>
            <cpu id=3/>
            <cpu id=5/>
            <cpu id=7/>
          </cpus>
        </cell>
      </cells>
    </topology>
  </host>

</capabilities>

跟正常情况下相比,发现少了<guest> 段落,下面贴下正常情况下的domain capabilities的情况:

<capabilities>

  <host>
    <uuid>01192eea-8053-cb11-a16c-f9dcbe14b1ee</uuid>
    <cpu>
      <arch>x86_64</arch>
      <model>Westmere</model>
      <vendor>Intel</vendor>
      <topology sockets=1 cores=2 threads=2/>
      <feature name=invpcid/>
      <feature name=erms/>
      <feature name=bmi2/>
      <feature name=smep/>
      <feature name=avx2/>
      <feature name=bmi1/>
      <feature name=fsgsbase/>
      <feature name=abm/>
      <feature name=rdtscp/>
      <feature name=pdpe1gb/>
      <feature name=rdrand/>
      <feature name=f16c/>
      <feature name=avx/>
      <feature name=osxsave/>
      <feature name=xsave/>
      <feature name=tsc-deadline/>
      <feature name=movbe/>
      <feature name=pcid/>
      <feature name=pdcm/>
      <feature name=xtpr/>
      <feature name=fma/>
      <feature name=tm2/>
      <feature name=est/>
      <feature name=vmx/>
      <feature name=ds_cpl/>
      <feature name=monitor/>
      <feature name=dtes64/>
      <feature name=pclmuldq/>
      <feature name=pbe/>
      <feature name=tm/>
      <feature name=ht/>
      <feature name=ss/>
      <feature name=acpi/>
      <feature name=ds/>
      <feature name=vme/>
    </cpu>
    <power_management>
      <suspend_mem/>
      <suspend_disk/>
      <suspend_hybrid/>
    </power_management>
    <migration_features>
      <live/>
      <uri_transports>
        <uri_transport>tcp</uri_transport>
      </uri_transports>
    </migration_features>
    <topology>
      <cells num=1>
        <cell id=0>
          <memory unit=KiB>3732188</memory>
          <cpus num=4>
            <cpu id=0 socket_id=0 core_id=0 siblings=0-1/>
            <cpu id=1 socket_id=0 core_id=0 siblings=0-1/>
            <cpu id=2 socket_id=0 core_id=1 siblings=2-3/>
            <cpu id=3 socket_id=0 core_id=1 siblings=2-3/>
          </cpus>
        </cell>
      </cells>
    </topology>
    <secmodel>
      <model>none</model>
      <doi>0</doi>
    </secmodel>
    <secmodel>
      <model>dac</model>
      <doi>0</doi>
      <baselabel type=kvm>+0:+0</baselabel>
      <baselabel type=qemu>+0:+0</baselabel>
    </secmodel>
  </host>

  <guest>
    <os_type>hvm</os_type>
    <arch name=‘i686‘>
      <wordsize>32</wordsize>
      <emulator>/usr/bin/qemu-system-i386</emulator>
      <machine canonical=‘pc-i440fx-trusty‘ maxCpus=‘255‘>pc</machine>
      <machine maxCpus=‘255‘>pc-0.12</machine>
      <machine maxCpus=‘255‘>pc-1.3</machine>
      <machine maxCpus=‘255‘>pc-q35-1.6</machine>
      <machine canonical=‘pc-1.0-qemu-kvm‘ maxCpus=‘255‘>pc-1.0-precise</machine>
      <machine maxCpus=‘255‘>pc-q35-1.5</machine>
      <machine maxCpus=‘1‘>xenpv</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.6</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.7</machine>
      <machine maxCpus=‘255‘>pc-0.11</machine>
      <machine maxCpus=‘255‘>pc-0.10</machine>
      <machine maxCpus=‘255‘>pc-1.2</machine>
      <machine maxCpus=‘1‘>isapc</machine>
      <machine maxCpus=‘255‘>pc-q35-1.4</machine>
      <machine maxCpus=‘128‘>xenfv</machine>
      <machine maxCpus=‘255‘>pc-0.15</machine>
      <machine maxCpus=‘255‘>pc-0.14</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.5</machine>
      <machine canonical=‘pc-q35-2.0‘ maxCpus=‘255‘>q35</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.4</machine>
      <machine maxCpus=‘255‘>pc-1.1</machine>
      <machine maxCpus=‘255‘>pc-q35-1.7</machine>
      <machine canonical=‘pc-1.0‘ maxCpus=‘255‘>pc-1.0-qemu-kvm</machine>
      <machine maxCpus=‘255‘>pc-i440fx-2.0</machine>
      <machine maxCpus=‘255‘>pc-0.13</machine>
      <domain type=‘qemu‘>
      </domain>
      <domain type=‘kvm‘>
        <emulator>/usr/bin/qemu-system-i386</emulator>
      </domain>
    </arch>
    <features>
      <cpuselection/>
      <deviceboot/>
      <acpi default=‘on‘ toggle=‘yes‘/>
      <apic default=‘on‘ toggle=‘no‘/>
      <pae/>
      <nonpae/>
    </features>
  </guest>

  <guest>
    <os_type>hvm</os_type>
    <arch name=‘x86_64‘>
      <wordsize>64</wordsize>
      <emulator>/usr/bin/qemu-system-x86_64</emulator>
      <machine canonical=‘pc-i440fx-trusty‘ maxCpus=‘255‘>pc</machine>
      <machine maxCpus=‘255‘>pc-1.3</machine>
      <machine maxCpus=‘255‘>pc-0.12</machine>
      <machine maxCpus=‘255‘>pc-q35-1.6</machine>
      <machine canonical=‘pc-1.0-qemu-kvm‘ maxCpus=‘255‘>pc-1.0-precise</machine>
      <machine maxCpus=‘255‘>pc-q35-1.5</machine>
      <machine maxCpus=‘1‘>xenpv</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.6</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.7</machine>
      <machine maxCpus=‘255‘>pc-0.11</machine>
      <machine maxCpus=‘255‘>pc-1.2</machine>
      <machine maxCpus=‘255‘>pc-0.10</machine>
      <machine maxCpus=‘1‘>isapc</machine>
      <machine maxCpus=‘255‘>pc-q35-1.4</machine>
      <machine maxCpus=‘128‘>xenfv</machine>
      <machine maxCpus=‘255‘>pc-0.15</machine>
      <machine maxCpus=‘255‘>pc-0.14</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.5</machine>
      <machine maxCpus=‘255‘>pc-i440fx-1.4</machine>
      <machine canonical=‘pc-q35-2.0‘ maxCpus=‘255‘>q35</machine>
      <machine maxCpus=‘255‘>pc-1.1</machine>
      <machine maxCpus=‘255‘>pc-q35-1.7</machine>
      <machine canonical=‘pc-1.0‘ maxCpus=‘255‘>pc-1.0-qemu-kvm</machine>
      <machine maxCpus=‘255‘>pc-i440fx-2.0</machine>
      <machine maxCpus=‘255‘>pc-0.13</machine>
      <domain type=‘qemu‘>
      </domain>
      <domain type=‘kvm‘>
        <emulator>/usr/bin/qemu-system-x86_64</emulator>
      </domain>
    </arch>
    <features>
      <cpuselection/>
      <deviceboot/>
      <acpi default=‘on‘ toggle=‘yes‘/>
      <apic default=‘on‘ toggle=‘no‘/>
    </features>
  </guest>

</capabilities>

这时问题就很明显了,肯定是升级qemu时哪里出现了问题,经过多次尝试,终于发现了原因:我们需要将 qemu-system-x86_64 安装在 /usr/bin/ 目录下才能正常define虚拟机

然后再次重新编译升级qemu,指定 prefix=/usr/即可,命令如下:

root@ubuntu:/opt/qemu-2.0.0# ./configure  --prefix=/usr/ --target-list=x86_64-softmmu
root@ubuntu:/opt/qemu-2.0.0# make
root@ubuntu:/opt/qemu-2.0.0# make install

然后删除原来/usr/local/bin/目录下残留的qemu-*文件即可。

 

[virsh] error: unknown OS type hvm解决办法

标签:

原文地址:http://www.cnblogs.com/CasonChan/p/4448315.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!