[unix] 다시 시작하지 않고 SELinux를 비활성화하는 방법은 무엇입니까?

SELinux를 비활성화해야하지만 컴퓨터를 다시 시작할 수 없습니다

나는 링크를 따랐다.

setenforce 0

그러나이 명령을 실행 한 후 나는 그것을 확인했다.

sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   permissive
Mode from config file:          disabled
Policy version:                 24
Policy from config file:        targeted

다른 옵션이 있습니까?



답변

sestatus현재 모드를로 표시합니다 permissive.

에서 permissive모드, SELinux가 아무것도를 차단하지만, 단순히 경고를 표시하지 않습니다. 라인이 enforcing실제로 차단 될 때 라인이 표시 됩니다.

재부팅하지 않고 SELinux를 완전히 비활성화 할 수 있다고 생각하지 않습니다.


답변

SELinux재부팅하지 않고 비활성화 할 수 없습니다. 그러나 permissive모드로 만드는 것은 귀하의 요구 사항을 만족시킬 것입니다.

의 출력 sestatusSELinux를 사용할 수 있지만, 또한에 보여줍니다 Permissive당신은 단지에 무슨 짓을하는 모드 setenforce명령을 입력합니다.


답변

CentOS 7에서 :

echo 0 > /sys/fs/selinux/enforce


답변

글을 쓰는 시점에서 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

사용자가 작동하지 않습니다.

[aries@csibesz]$ setenforce 0
setenforce:  setenforce() failed

루트로서 다음을 수행합니다.

[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

CentOS 7 및 RedHat EL 7에도 동일하게 적용됩니다. 재부팅하지 않고 작동합니다.


답변

selinux를 비활성화하는 가장 좋은 방법은 다음 명령을 사용하는 것입니다.

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

또는

  1. vi /etc/sysconfig/selinux설정 selinux=disabled

또는

  1. set enforce 0 sestatus

경우에 따라 다시 시작해야합니다.


답변

CentOS 6 (7 아님)의 경우 :

echo 0 > /selinux/enforce


답변