Por que o comando setsebool do SELINUX está demorando tanto e lento?

9

Notei que o comando setsebool leva mais tempo que outros comandos linux. Tal como:

setsebool -P ftp_home_dir ON

Por curiosidade, quero saber por que o comando "setsebool" precisa de tanto tempo para concluir a tarefa?

Xianlin
fonte
1
time setsebool -P ftp_home_dir ON. Quanto tempo você considera muito tempo?
jordanm
1
tentei o comando acima e o tempo "real" é de cerca de 30 segundos. Normalmente, um comando linux normal time setenforce 0fornecerá cerca de 0,011 s de tempo "real". Eu sinto que 30 segundos é um pouco longo e me pergunto o que está acontecendo no back-end?
Xianlin
strace -f setsebool -P ftp_home_dir ONe veja onde exatamente está demorando.
Flup
Eu acho que preciso de mais conhecimento de programação para entender a saída do strace ... Eu acho que é porque o selinux envolve muitas alterações de nível "profundas" no sistema linux e é por isso que leva tanto tempo para concluir um comando.
Xianlin
O SELinux precisa recompilar suas regras quando você faz uma alteração? Eu pensei em me lembrar de ter lido isso em algum lugar.
functionvoid

Respostas:

5

O motivo é tão lento porque está executando uma compilação completa da política quando você executa o comando. (Veja este BZ: https://bugzilla.redhat.com/show_bug.cgi?id=811656 , Dan Walsh é um dos mantenedores da política do SELinux no RHEL e Fedora). Foi corrigido em versões posteriores do Fedora, o que significa que provavelmente terminará no EL7 e possivelmente em versões posteriores do EL6.

jsbillings
fonte