determina o ulimit para o usuário root

8

acreditamos que aumentamos o máximo de descritores de arquivos abertos para o usuário root. Isto foi feito adicionando esta linha ao /etc/security/limits.conf:

*         -    nofile            2048

Achamos que confirmamos que o limite do usuário root foi aumentado porque podemos dizer (não descrito aqui) que nosso aplicativo (solr - que é executado pelo root) tem 1098 arquivos abertos. No entanto, não podemos dizer com certeza quantos arquivos abertos o usuário root é permitido. Esperamos que este comando funcione, mas não parece ser:

$ sudo -u root -s "ulimit -Sn"
1024

Alguma ideia? Obrigado!

    
por andersonbd1 14.09.2011 / 22:31

3 respostas

6

Obtenha o PID do processo em que solr está sendo executado e, em seguida, cat /proc/$SOLR_PID/limits - isso informará os limites reais do processo.

Eu recomendaria a execução de coisas como solr como um usuário desprivilegiado separado. Ao fazer isso, você tem várias opções ( limits.conf ou adicione um ulimit -n 2048 ao script de inicialização, ...). O último não é tão brilhante, mas funciona para configurações rápidas e reiniciando o daemon

RANT: não me diga que você não pode reiniciar porque você perderá o serviço. Se esse for o caso, você deve ter uma configuração de HA de qualquer maneira:)

    
por 15.09.2011 / 00:18
5

Após alterar o número de arquivos abertos em /etc/security/limits.conf , o usuário deve efetuar logout e login novamente para entrar em vigor. Então, tente isto:

$ sudo su -
# ulimit -Sn
    
por 15.09.2011 / 04:53
2

Eu sei que essa pergunta tem uma resposta, mas parece mais uma solução, não uma solução real.

De acordo com o Ubuntu isso não é um bug, mas um problema de documentação, veja: link

Obrigado pelo seu relatório. Como você disse, isso não é um bug no pam, mas um problema de documentação. O fato de permitir explicitamente permitir limites para o usuário root foi resolvido há pouco tempo (30 de agosto de 2000), mas você precisa nomear explicitamente o usuário root para aplicar os limites.

Então, se você quiser alterar o ulimit em todos os usuários, incluindo o usuário root, você deve especificar:

*         -    nofile            2048
root      -    nofile            2048
    
por 29.05.2017 / 17:07