CentOS 6.9+LAMP环境下SELinux无法启用问题求助
解决CentOS 6.9无法启用SELinux的问题
我来帮你排查这个SELinux始终显示disabled的问题,CentOS 6.9上这种情况我遇到过好几次,主要从这几个方向入手解决:
1. 检查GRUB启动参数是否禁用了SELinux
有时候系统启动时的GRUB参数会直接覆盖/etc/selinux/config的设置,这是最常见的原因:
- 编辑GRUB配置文件:
vi /boot/grub/grub.conf(CentOS 6的GRUB配置通常在这里,/etc/grub.conf是它的软链接) - 找到每个启动项的
kernel行,检查是否带有selinux=0或者enforcing=0的参数,如果有,直接删除这些参数 - 保存文件后,重启系统再执行
sestatus验证
2. 修复SELinux文件标签
如果系统安装时未启用SELinux,或者后续标签被破坏,即使修改配置文件也无法正常启用:
- 先尝试挂载SELinux文件系统(如果没挂载的话):
mount -t selinuxfs none /sys/fs/selinux - 创建自动重新标记的触发文件:
touch /.autorelabel - 重启系统,这次重启过程会比平时久,因为系统会自动重新标记所有文件系统的SELinux标签,耐心等待完成即可
3. 再次确认SELinux配置文件
你已经检查了软链接,再确认下配置文件内容:
- 打开
/etc/selinux/config,确保SELINUX=enforcing和SELINUXTYPE=targeted这两行没有被注释,且内容正确 - 注意配置项是大小写敏感的,不要写成
SELinux这种错误格式
4. 查看日志排查剩余问题
如果以上步骤都做完还是不行,查看系统日志找线索:
- 查看
/var/log/messages,搜索selinux相关的错误信息 - 或者查看
/var/log/audit/audit.log,这里会记录SELinux相关的详细报错,帮助定位问题
重启完成后,再执行sestatus应该就能看到SELinux已经启用并处于enforcing模式了,之后setenforce和setsebool命令也能正常使用。
内容的提问来源于stack exchange,提问作者s_p
相关产品推荐
相关产品推荐

