se estiver a obter um erro” Too many open files (24) ” Então a sua aplicação/comando/script está a atingir o limite máximo de ficheiro aberto permitido pelo linux. Você precisa aumentar o limite de arquivo aberto como abaixo:
limite de aumento
limite por usuário
arquivo aberto: /etc/security/limits.conf
colar a seguir ao fim:
* hard nofile 500000* soft nofile 500000root hard nofile 500000root soft nofile 500000
500000 é um número justo. Não sei bem o que é o limite máximo, mas 999999 (seis-9) funcionou para mim uma vez, tanto quanto me lembro.
depois de gravar o ficheiro, poderá ter de sair e autenticar-se novamente.
pam-limits
I read at many places that an extra step is need for limit to change for daemon processes. Eu não precisava seguir ainda, mas se as mudanças acima não estão funcionando para você, você pode dar isso uma tentativa.
abrir /etc/pam.d/common-session
adicionar a linha seguinte:
session required pam_limits.so
limite para todo o sistema
Defina isto acima do limite para o utilizador.
aberto /etc/sysctl.conf
:
fs.file-max = 2097152
executar:
sysctl -p
acima aumentará o número “total” de ficheiros que podem permanecer abertos em todo o sistema.
Verificar Novas Limites
Use o seguinte comando para ver limite máximo de descritores de arquivo:
cat /proc/sys/fs/file-max
Limite Rígido
ulimit -Hn
Soft Limit
ulimit -Sn
se você estiver logado como root:
Verificar o limite para outro usuário
Basta substituir www-data
linux nome de usuário que você deseja verificar limites para:
su - www-data -c 'ulimit -aHS' -s '/bin/bash'
Verifique os limites de um processo em execução:
processo de Encontrar-id (PID):
ps aux | grep process-name
Suponha que, XXX é o PID, em seguida, executar comandos a seguir para verificar os limites de:
cat /proc/XXX/limits