Użycie komendy ulimit
zmienia tylko limity zasobów dla bieżącej powłoki i jej dzieci, a sudo ulimit
tworzy powłokę roota, dostosowuje jej limity, a następnie wychodzi (w ten sposób, o ile widzę, nie ma prawdziwego efektu).
Aby przekroczyć 12288, musisz dostosować parametry jądra kern.maxfiles
i kern.maxfilesperproc
, a także (przynajmniej według tego wpisu na blogu , który jest podsumowaniem tej dyskusji ) limit launchd. Możesz użyć launchctl limit
do ustawienia ich wszystkich naraz:
sudo launchctl limit maxfiles 1000000 1000000
Aby to było trwałe (tzn. nie resetowało się po restarcie), utwórz /etc/launchd.conf
zawierający:
limit maxfiles 1000000 1000000
Ten możesz użyć ulimit
(ale bez sudo
) do ustawienia limitu procesu.
Jeśli to nie wystarczy, możesz napotkać ograniczenia rozmiaru w jądrze. Jeśli twój model to obsługuje , uruchomienie jądra w trybie 64-bitowym może pomóc.