Este artigo , acho que resolve o problema .
Basicamente, você deve usar o comando ulimit para aumentar os recursos disponíveis.
Por exemplo:
Use o seguinte comando para exibir o número máximo de descritores de arquivos abertos:
cat /proc/sys/fs/file-max
Para ver os valores de hardware e software, execute o comando da seguinte forma:
# ulimit -Hn
# ulimit -Sn
Para ver os valores de hardware e software para o usuário httpd ou oracle, execute o comando da seguinte forma:
# su - username
Para corrigir o número máximo de arquivos, você pode aumentar o número máximo de arquivos abertos definindo um novo valor na variável do kernel / proc / sys / fs / file-max da seguinte maneira (login como root):
# sysctl -w fs.file-max=100000
O comando acima força o limite para 100.000 arquivos. Você precisa editar o arquivo /etc/sysctl.conf
e colocar a seguinte linha para que, após a reinicialização, a configuração permaneça como está. Para fazer isso, anexe uma diretiva de configuração da seguinte forma:
fs.file-max = 100000
Salve e feche o arquivo. Os usuários precisam fazer logout e efetuar login novamente para que as alterações entrem em vigor ou apenas digite o seguinte comando:
# sysctl -p
Verifique suas configurações com o comando:
# cat /proc/sys/fs/file-max
ou:
# sysctl fs.file-max
O procedimento acima define os limites dos descritores de arquivo (FD) do sistema, mas você pode limitar o usuário httpd
(ou qualquer outro usuário) a limites específicos editando /etc/security/limits.conf
file editando /etc/security/limits.conf
e definindo os limites segue:
httpd soft nofile 4096
httpd hard nofile 10240
Em seguida, verifique-os por:
# su - httpd
$ ulimit -Hn
$ ulimit -Sn
Se você tiver o problema em outras distribuições do Linux, verifique o /etc/pam.d/login
e certifique-se de ter pam_limits.so
ativado, por exemplo,
session required pam_limits.so