kvm与selinux的设置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kvm与selinux的设置相关的知识,希望对你有一定的参考价值。

1.背景说明

  由于kvm所在的机器启用了SELINUX,后来将之关闭,关闭之后,发现kvm的虚拟机无法启动,启动过程中的报错信息如下:

[[email protected] ~]# virsh start zabbix
error: Failed to start domain zabbix
error: unsupported configuration: Unable to find security driver for label selinux


libvirt中的日志也提示报错:

[[email protected] ~]# tail -f /var/log/libvirt/libvirtd.log
2016-06-20 09:54:41.724+0000: 2388: error : qemuRemoveCgroup:754 : internal error Unable to find cgroup for zabbix
2016-06-20 09:54:41.724+0000: 2388: warning : qemuProcessStop:4403 : Failed to remove cgroup for zabbix
2016-06-20 09:54:41.725+0000: 2388: error : qemuAutostartDomain:284 : Failed to autostart VM ‘zabbix‘: unsupported configuration: Unable to find security driver for label selinux
2016-06-20 09:54:41.734+0000: 2388: error : virSecurityManagerGenLabel:376 : unsupported configuration: Unable to find security driver for label selinux
2016-06-20 09:54:41.741+0000: 2388: error : qemuRemoveCgroup:754 : internal error Unable to find cgroup for roller
2016-06-20 09:54:41.741+0000: 2388: warning : qemuProcessStop:4403 : Failed to remove cgroup for roller
2016-06-20 09:54:41.742+0000: 2388: error : qemuAutostartDomain:284 : Failed to autostart VM ‘roller‘: unsupported configuration: Unable to find security driver for label selinux
2016-06-20 09:59:07.548+0000: 2378: error : virSecurityManagerGenLabel:376 : unsupported configuration: Unable to find security driver for label selinux
2016-06-20 09:59:07.561+0000: 2378: error : qemuRemoveCgroup:754 : internal error Unable to find cgroup for zabbix
2016-06-20 09:59:07.561+0000: 2378: warning : qemuProcessStop:4403 : Failed to remove cgroup for zabbix


2.造成原因

  由于机器开机状态时,将SElinux的状态信息save在虚拟机中,导致SElinux关闭之后,虚拟找不到对应的label,从而导致vm启动失败。


3.解决方法

  virsh edit domain_name查看虚拟机的配置文件中,是否有selinux标签的相关设置,如果有,则将其删除,再启动vm。如果没有,则可能已经保存在vm状态中,将原有的状态删除即可(对应路径/var/lib/libvirt/qemu/save),如下:

[[email protected] ~]# virsh managedsave-remove zabbix
Removed managedsave image for domain zabbix

[[email protected] ~]# virsh start zabbix
Domain zabbix started

[[email protected] ~]# virsh list 
 Id    Name                           State
----------------------------------------------------
 4     zabbix                         running


如果配置配置文件中有selinux相关的配置,将其删除,期配置类似于:

<seclabel type=‘dynamic‘ model=‘selinux‘ relabel=‘yes‘>
    <label>system_u:system_r:svirt_t:s0:c625,c859</label>
    <imagelabel>system_u:object_r:svirt_image_t:s0:c625,c859</imagelabel>
</seclabel>


本文出自 “Happy实验室” 博客,请务必保留此出处http://happylab.blog.51cto.com/1730296/1791122

以上是关于kvm与selinux的设置的主要内容,如果未能解决你的问题,请参考以下文章

kvm与selinux

centos7.4应用之KVM

kvm虚拟机使用说明

centos7 kvm

kvm 安全相关:selinux svirt

CloudStack+KVM环境搭建(步骤很详细,说明ClockStack是用来管理虚拟机的)