Como desativar o SELinux sem reiniciar?

50

Preciso desativar o SELinux, mas não consigo reiniciar a máquina

segui este link onde recebo o comando abaixo

setenforce 0

Mas depois de executar este comando, verifiquei se

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

Existe alguma outra opção?

Vikas Hardia
fonte
4
setenforce 0<- você o executou a partir do root ou com sudo?
UVV
11
@UVV sim eu estou fazendo tudo isso de raiz
Vikas Hardia

Respostas:

59

sestatusestá mostrando o modo atual como permissive.

No permissivemodo, o SELinux não irá bloquear nada, mas apenas avisa. A linha será exibida enforcingquando estiver realmente bloqueando.

Não acredito que seja possível desativar completamente o SELinux sem uma reinicialização.

garethTheRed
fonte
11
Eu acho que você pode desativá-lo sem uma reinicialização editando diretamente o selinux / config arquivo / etc / e definindo SELINUX = desativado
dmohr
11
@dmohr - Se você ler este documento do Centos, ele informa que ele só funciona na próxima reinicialização.
precisa saber é o seguinte
12

Desabilitar SELinuxsem reiniciar não é possível. Mas acho que fazê-lo no permissivemodo satisfará sua exigência.

A saída de sestatusshows SELinuxestá ativada, mas também mostra que está no Permissivemodo, o que você acabou de fazer com o setenforcecomando.

iniciante
fonte
10

No CentOS 7:

echo 0 > /sys/fs/selinux/enforce
rsnow
fonte
2
fwiw, isso não funcionou para mim, Centos 7.2:# sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: permissive # echo 0 > /sys/fs/selinux/enforce # sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted
datakid 04/10/16
7

No momento da redação, o que o OP fez deve funcionar. No 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

Como o usuário não funciona.

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

Como root, ele faz:

[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

O mesmo se aplica ao CentOS 7 e RedHat EL 7: ele está funcionando sem reinicialização.

Janos Feher
fonte
4

A melhor maneira de desativar o selinux é usando o seguinte comando:

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

OU

  1. vi /etc/sysconfig/selinuxdefinir selinux=disabled

OU

  1. set enforce 0 sestatus

Embora em certos casos seja necessário reiniciar.

Divyani Singh
fonte
3

Para o CentOS 6 (não 7):

echo 0 > /selinux/enforce
user169151
fonte
11
Não funciona no centos 7. Só funciona no centos 6 e abaixo
shreddd 19/10/16
11
Esta resposta está correta para centos 6. Por favor, verifique antes de fazer o downvoting.
precisa