【发布时间】:2015-11-30 14:50:26
【问题描述】:
我有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 并检查了“热添加”功能。它奏效了。
我在其他VMs(CentOS、Fedora、Debian)上测试了它并看到了相同的结果。
结果:
- 如果启用
qemu-agent,我将无法使用hot plug。 - 如果使用“热插拔”,我必须忘记代理。
是我配置错误还是这些功能不能一起使用?
主机操作系统:Ubuntu15.10
QEMU模拟器:现在2.4.92(测试2.3和2.4.1)
VMM: 1.3.0
【问题讨论】:
-
这很可能是一个错误。什么是主机操作系统?它有 AppArmor(我猜是的)。
/etc/libvirt/qemu.conf中的security_driver的设置是什么?根据this post 启用调试信息也很好,然后尝试从那里开始,提交错误或在邮件列表中询问。