'root' vs 'sudo' de ulimit POV

1

De acordo com algumas outras perguntas e respostas, eu esperava os mesmos resultados para ambos os comandos, mas esse não é o caso.

além disso, executando um processo do sudo, terminado com "muitos arquivos abertos", onde a execução como raiz não. Qual é a diferença exatamente entre os 2?

nati@server:/var/tmp$ sudo bash  -c "ulimit -n"
1024
nati@server:/var/tmp$ sudo su
root@server:/var/tmp# ulimit -n
32000
    
por Nati 20.12.2016 / 09:54

1 resposta

2

/etc/security/limits.conf é usado por pam_limits . Um módulo de autenticação como su , sudo ou login chama os módulos PAM de acordo com a descrição do PAM. Para a maioria das distros isso significa pegar a entrada correspondente em /etc/pam.d/ . Por exemplo, isso pode ser /etc/pam.d/sudo ; para o Gentoo que se parece com

auth    include         system-auth
account include         system-auth
session include         system-auth

onde system-auth tem uma linha como

session         required        pam_limits.so 

Portanto, os limites de recursos são configurados conforme definido em /etc/security/limits.conf .

Para minha instalação do Kali, parece diferente. pam_limits não é invocado para sudo . Aparentemente, todos os âncoras do Debian compartilham este "recurso". Experimentar com /etc/security/limits.conf confirma sua observação - em sudo recebo 1024 enquanto que para o login eu recebo o que eu configurei em limits.conf .

    
por 20.12.2016 / 10:45

Tags