acreditamos que aumentamos o número máximo de descritores de arquivos abertos para o usuário root. Isso foi feito adicionando esta linha ao /etc/security/limits.conf:
* - nofile 2048
Acreditamos que confirmamos que o limite do usuário raiz foi aumentado porque podemos dizer (não descrito aqui) que nosso aplicativo (solr - que é executado pela raiz) 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!
Respostas:
Obtenha o PID do processo em
solr
execução e, em seguidacat /proc/$SOLR_PID/limits
- isso informará os limites reais do processo.Eu recomendaria executar coisas como
solr
um usuário não privilegiado separado. Ao fazer isso, você tem várias opções ( limits.conf ou adiciona umulimit -n 2048
ao script init, ...). O último não é tão brilhante, mas funciona para configurações rápidas e para reiniciar o daemonRANT: não me diga que você não pode reiniciar porque perderá o serviço. Se for esse o caso, você deve ter uma configuração de HA de qualquer maneira :)
fonte
Depois de alterar o número de arquivos abertos
/etc/security/limits.conf
, o usuário deve sair e entrar novamente para entrar em vigor. Então, tente o seguinte:fonte
Eu sei que esta pergunta tem uma resposta, mas isso parece mais uma solução alternativa, não uma solução real.
De acordo com o ubuntu, isso não é um bug, mas um problema de documentação, consulte: https://bugs.launchpad.net/ubuntu/+source/pam/+bug/65244
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 limites para a raiz do usuário foi abordado há um tempo (30 de agosto de 2000), mas você precisa nomear explicitamente a raiz do usuário para aplicar os limites.
Portanto, se você deseja alterar o ulimit em todos os usuários, incluindo o usuário root, é necessário especificar:
fonte