我刚刚从 13.04 升级到 13.10,在运行 KVM 时遇到了这个问题
Unable to complete install: 'internal error: process exited while connecting to monitor: W: kvm binary is deprecated, please use qemu-system-x86_64 instead
char device redirected to /dev/pts/10 (label charserial0)
failed to initialize KVM: Device or resource busy
详细错误:
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 96, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/create.py", line 1983, in do_install
guest.start_install(False, meter=meter)
File "/usr/lib/python2.7/dist-packages/virtinst/Guest.py", line 1246, in start_install
noboot)
File "/usr/lib/python2.7/dist-packages/virtinst/Guest.py", line 1314, in _create_guest
dom = self.conn.createLinux(start_xml or final_xml, 0)
File "/usr/lib/python2.7/dist-packages/libvirt.py", line 2892, in createLinux
if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self)
libvirtError: internal error: process exited while connecting to monitor: W: kvm binary is deprecated, please use qemu-system-x86_64 instead
char device redirected to /dev/pts/8 (label charserial0)
failed to initialize KVM: Device or resource busy
答案1
这显然是 virsh 的问题。只需尝试直接使用错误消息中建议的命令启动虚拟机,如下所示
sudo qemu-system-x86_64 -hda [wherever your created virtual disk is]
显然virt-manager 中的一个错误尚未修复。该用户找到了解决方案通过改变VM的XML定义。
答案2
供其他有需要但可能不会每天编辑域定义的人参考。
问题正如错误消息所示:模拟器的可执行文件已更改,因此必须更新 VM 的定义文件。
- 从命令 shell 并以 root 或可以使用 libvirt 系统的用户身份启动
virsh
list --all
- 检查虚拟机的正确域名,假设它是
vm_name
edit vm_name
- 搜索标签
<emulator>/usr/bin/kvm</emulator>
- 替换为
<emulator>/usr/bin/qemu-system-x86_64</emulator>
- 保存文件
start vm_name
请注意,根据 VM 定义的年限和创建它的系统,旧的模拟器可执行文件可能与 simplu kvm 不同,但无论如何都要替换它:-)
此外:除此之外,我还遇到了另一个问题:一些 VM 磁盘映像文件具有错误的权限,例如 root:root 或 root:kvm。似乎从 2014 年 1 月的 13.10 开始,它们应该是 libvirt-qemu:kvm
答案3
我正在使用虚拟机管理器并遇到此错误。当我在创建虚拟机时使用“qemu”作为虚拟机管理程序类型时,此问题已解决。