我有KVM
个虚拟机正在运行CentOS
7作为访客OS
。我正在尝试使用此命令在运行时附加一个额外的磁盘(不关闭它):
$ sudo virsh attach-disk centos --source /var/lib/libvirt/images/newdisk.img --target sdb --persistent
但收到错误:
error: Failed to attach disk
error: internal error: cannot update AppArmor profile 'libvirt-d2e7bbb8-c7b3-44ec-b0ea-27539e0df732'
如果我对Debian
来宾做同样的事情 - 一切正常。
有什么区别,如何解决?
更新
我有评论!
我比较了两个VM
的xml,并看到CentOS
在他的配置中有QEMU-agent
:
<channel type="unix">
<source mode="bind" path="/var/lib/libvirt/qemu/channel/target/centos_auto.org.qemu.guest_agent.0"></source>
<target name="org.qemu.guest_agent.0" type="virtio"></target>
<address bus="0" controller="0" port="1" type="virtio-serial"></address>
</channel>
然后我删除了“频道qemu-ga”,重新启动了VM
并选中了“热添加”功能。它奏效了。
我在其他VM
(CentOS
,Fedora
,Debian
上对其进行了测试,并看到了同样的情况。
结果:
qemu-agent
我无法使用hot plug
。这是我在配置中的错误还是这些功能无法一起工作?
主机操作系统:Ubuntu
15.10
QEMU
模拟器:现在2.4.92
(已测试2.3
和2.4.1
)
VMM
:1.3.0
答案 0 :(得分:0)
这是libvirt的apparmor安全驱动程序中的一个明显错误。 XML中QEMU来宾代理配置的存在应该对将磁盘热插拔到guest虚拟机的能力没有影响。这个bug应该报告给libvirt上游或Ubuntu bug跟踪器。