如何在不重启的情况下禁用 SELinux?

Vik*_*dia 53 rhel selinux

我需要禁用 SELinux 但无法重新启动机器

我按照这个链接我得到了波纹管命令

setenforce 0
Run Code Online (Sandbox Code Playgroud)

但是在运行这个命令后我检查了

sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   permissive
Mode from config file:          disabled
Policy version:                 24
Policy from config file:        targeted
Run Code Online (Sandbox Code Playgroud)

还有其他选择吗?

gar*_*Red 64

sestatus将当前模式显示为permissive

permissive模式下,SELinux 不会阻止任何事情,而只是警告您。该行将enforcing在实际阻塞时显示。

我不相信在不重启的情况下完全禁用 SELinux 是不可能的。


beg*_*ner 13

SELinux不重启就禁用是不可能的。但我permissive想让它进入模式会满足你的要求。

sestatus显示的输出SELinux已启用,但也显示它处于Permissive模式,这就是您刚刚使用该setenforce命令所做的。


小智 11

在 CentOS 7 上:

echo 0 > /sys/fs/selinux/enforce
Run Code Online (Sandbox Code Playgroud)

  • fwiw,这对我不起作用,Centos 7.2:`# sestatus SELinux 状态:启用 SELinuxfs 挂载:/sys/fs/selinux SELinux 根目录:/etc/selinux 加载的策略名称:targeted 当前模式:permissive #echo 0 > /sys/fs/selinux/enforce # sestatus SELinux 状态:已启用 SELinuxfs 挂载:/sys/fs/selinux SELinux 根目录:/etc/selinux 加载的策略名称:targeted ` (2认同)

小智 7

在撰写本文时,OP 所做的应该有效。在 Fedora 26 上:

[aries@csibesz]$ sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   enforcing
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      30
Run Code Online (Sandbox Code Playgroud)

由于用户不工作。

[aries@csibesz]$ setenforce 0
setenforce:  setenforce() failed
Run Code Online (Sandbox Code Playgroud)

作为 root,它会:

[aries@csibesz]$ sudo setenforce 0
[aries@csibesz]$ sestatus
SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
SELinux root directory:         /etc/selinux
Loaded policy name:             targeted
Current mode:                   permissive
Mode from config file:          enforcing
Policy MLS status:              enabled
Policy deny_unknown status:     allowed
Max kernel policy version:      30
Run Code Online (Sandbox Code Playgroud)

这同样适用于 CentOS 7 和 RedHat EL 7:它无需重启即可工作。


小智 5

使用以下命令禁用 SELinuxis 的最佳方法:

sed -i 's/enforcing/disabled/g' /etc/selinux/config

或者

vi /etc/sysconfig/selinux, 放 selinux=disabled

或者

setenforce 0 && sestatus

尽管在某些情况下需要重新启动。