Comment désactiver SELinux sans redémarrage?

50

Je dois désactiver SELinux mais je ne peux pas redémarrer l'ordinateur

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é que

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?

Vikas Hardia
la source
4
setenforce 0<- l'avez-vous exécuté depuis la racine ou avec sudo?
UVV
1
@UVV oui je fais tout cela à partir de la racine
Vikas Hardia

Réponses:

59

sestatusaffiche le mode actuel en tant que permissive.

En permissivemode, SELinux ne bloquera rien, mais vous avertira simplement. La ligne montrera enforcingquand il bloque réellement.

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

garethTheRed
la source
1
Je pense que vous pouvez le désactiver sans redémarrer en modifiant directement le fichier / etc / selinux / config et en définissant SELINUX = disabled
dmohr
1
@dmohr - Si vous lisez ce document Centos, il vous dira qu'il ne fonctionne qu'au prochain redémarrage.
garethTheRed
12

Désactiver SELinuxsans redémarrage n'est pas possible. Mais je suppose que le rendre en permissivemode va satifsy votre exigence.

La sortie de sestatusshows SELinuxest activée mais montre également qu’elle est en Permissivemode, ce que vous venez de faire avec la setenforcecommande.

débutant
la source
10

Sur CentOS 7:

echo 0 > /sys/fs/selinux/enforce
rsnow
la source
2
fwiw, cela n'a pas fonctionné pour moi, 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
7

Au moment de la rédaction, ce que fait OP 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

En tant qu'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

La même chose s'applique à CentOS 7 et RedHat EL 7: cela fonctionne sans redémarrage.

Janos Feher
la source
4

Le meilleur moyen de désactiver selinux est d'utiliser la commande suivante:

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

OU

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

OU

  1. set enforce 0 sestatus

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

Divyani Singh
la source
3

Pour CentOS 6 (pas 7):

echo 0 > /selinux/enforce
utilisateur169151
la source
1
Ne fonctionne pas sur les centos 7. Ne fonctionne que sur les centos de 6 ans et moins
shreddd
1
Cette réponse est correcte pour centos 6. Veuillez vérifier avant de voter.
ora-600