我无法添加““

我无法添加““

ubuntu 13.04 qemu$ virsh 版本 针对库编译:libvirt 1.0.2 使用库:libvirt 1.0.2 使用 API:QEMU 1.0.2 运行虚拟机管理程序:QEMU 1.4.0

我想使用“任意 qemu 命令的传递”,因此我使用 virsh edit 将“转换为”http://libvirt.org/schemas/domain/qemu/1.0'>“。但在保存 xml 文件后,我再次打开 xml 文件。我找不到“http://libvirt.org/schemas/domain/qemu/1.0'>”。我该怎么办?

请~

答案1

如果未使用,则 libvirt 会删除命名空间声明。因此,您需要添加声明,并在保存之前向文件添加一个元素。这将由 libvirt 保留

<domain type='qemu' id='15' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'>
  ...
  <qemu:commandline>
    <qemu:arg value='-cpu'/>
    <qemu:arg value='arm1176'/>
  </qemu:commandline>
</domain>

答案2

我有一个可能的解决方法。我在使用相同版本的 virsh/qemu 时也遇到了同样的问题。

首先,我创建了虚拟机的 .xml 文件的一个新副本:

cp /etc/libvirt/qemu/my-vm.xml ./new-vm.xml

然后我编辑了新的 .xml 文件,添加了 qemu schema 行以及 qemu passthrough arg 标签。您需要更改并删除该行。

接下来启动 virsh 并定义一个新的 vm:

virsh # define cvm-qemuplus.xml
virsh # edit my-new-vm-name
// shows that the qemu arg tags persisted

我不确定执行 virsh 编辑并再次保存是否会清除标签。我没有尝试过。

相关内容