4.5. 在引导时更改 SELinux 模式
在引导时,您可以设置几个内核参数来更改 SELinux 的运行方式:
- enforcing=0
- 设置此参数可让系统以 permissive 模式启动,这在进行故障排除时非常有用。如果您的文件系统被破坏,使用 permissive 模式可能是唯一的选择。在 permissive 模式中,系统将继续正确创建标签。在这个模式中产生的 AVC 信息可能与 enforcing 模式不同。在 permissive 模式中,只报告来自于同一拒绝的一系列操作的第一个拒绝信息。然而,在 enforcing 模式中,您可能会得到一个与读取目录相关的拒绝信息,应用程序将停止。在 permissive 模式中,您会得到相同的 AVC 信息,但应用程序将继续读取目录中的文件,并为因为每个拒绝额外获得一个 AVC。
- selinux=0
- 这个参数会导致内核不载入 SELinux 构架的任意部分。初始化脚本会注意到系统使用
selinux=0参数引导,并涉及/.autorelabel文件。这会导致系统在下次使用 SELinux enabled 模式引导时自动重新标记。重要红帽不推荐使用selinux=0参数。要调试您的系统,首选使用 permissive 模式。 - autorelabel=1
- 这个参数强制系统使用类似以下命令的重新标记:如果系统标签包含大量错误,您可能需要以 permissive 模式引导,以便自动标签成功。
touch /.autorelabel reboot
~]# touch /.autorelabel ~]# rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow
有关 SELinux 的其他内核引导参数,如
checkreqprot,请查看 /usr/share/doc/kernel-doc- <KERNEL_VER>/Documentation/kernel-parameters.txt 文件。本文档随 kernel-doc 软件包一起安装。使用安装的内核的版本号替换 <KERNEL_VER> 字符串,例如:
yum install kernel-doc less /usr/share/doc/kernel-doc-3.10.0/Documentation/kernel-parameters.txt
~]# yum install kernel-doc
~]$ less /usr/share/doc/kernel-doc-3.10.0/Documentation/kernel-parameters.txt