Usando o comando ulimit
apenas altera os limites de recursos para a concha actual e seus filhos e sudo ulimit
cria uma concha de raiz, ajusta os seus limites, e depois sai (tendo assim, tanto quanto posso ver, nenhum efeito real).
Para ultrapassar 12288, é necessário ajustar os parâmetros kern.maxfiles
e kern.maxfilesperproc
do kernel, e também (pelo menos de acordo com esta entrada no blog , que é um resumo de esta discussão ) um limite de lançamento. Pode usar launchctl limit
para ajustar todos de uma só vez:
sudo launchctl limit maxfiles 1000000 1000000
Para tornar isto permanente (isto é, não reiniciar quando reiniciar), crie /etc/launchd.conf
contendo:
limit maxfiles 1000000 1000000
Então pode usar ulimit
(mas sem o sudo
) para ajustar o limite do seu processo.
Se isto não o fizer, pode estar a correr para limites de tamanho no núcleo. Se o seu modelo o suporta , iniciar o kernel em 64-bit mode pode ajudar.