web-dev-qa-db-fra.com

Comment désactiver SELinux sans redémarrer?

J'ai besoin de désactiver SELinux mais je ne peux pas redémarrer la machine

j'ai suivi ce lien où je reçois la commande ci-dessous

setenforce 0

Mais après avoir exécuté cette commande, j'ai vérifié

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

Y a-t-il une autre option?

51
Vikas Hardia

sestatus affiche le mode actuel sous la forme permissive.

En mode permissive, SELinux ne bloquera rien, mais vous avertira simplement. La ligne affichera enforcing lorsqu'elle est réellement bloquante.

Je ne pense pas qu'il soit possible de désactiver complètement SELinux sans redémarrage.

60
garethTheRed

La désactivation de SELinux sans redémarrage n'est pas possible. Mais je suppose que le faire en mode permissive va satisfaire votre besoin.

La sortie de sestatus montre que SELinux est activée mais montre également qu'elle est en mode Permissive, ce que vous venez de faire avec la commande setenforce.

12
beginer

Sur CentOS 7:

echo 0 > /sys/fs/selinux/enforce
10
rsnow

Au moment d'écrire ces lignes, ce que l'OP a fait devrait fonctionner. Sur 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

Comme l'utilisateur ne fonctionne pas.

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

En tant que root, il fait:

[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

Il en va de même pour CentOS 7 et RedHat EL 7: il fonctionne sans redémarrage.

7
Janos Feher

La meilleure façon de désactiver selinux est d'utiliser la commande suivante:

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

OR

  1. vi /etc/sysconfig/selinux, ensemble selinux=disabled

OR

  1. set enforce 0 sestatus

Bien que dans certains cas, un redémarrage sera nécessaire.

4
Divyani Singh

Pour CentOS 6 (pas 7):

echo 0 > /selinux/enforce
3
user169151