Некоторые ограничения не могут быть изменены с помощью ulimit
, потому что они применяются только к текущей оболочке, поэтому для запуска ограничений следует использовать команду launchctl
, например:
sudo launchctl limit maxfiles 100000 unlimited
Обратите внимание, что применение этих ограничений в /etc/launchd.conf
(как предлагается в других ответах) больше не поддерживается в последних выпусках macOS. Хотя все еще можно использовать launchd.plist
(см. man launchd.plist
), такой как файлы конфигурации для отдельных пользователей или общесистемных plist
как это предлагается здесь и там.
Чтобы сделать эти ограничения постоянными, вы можете использовать /etc/sysctl.conf
и добавить, например:
kern.maxprocperuid=1000
kern.maxproc=2000
kern.maxfilesperproc=20000
kern.maxfiles=50000
Чтобы изменения вступили в силу, требуется перезагрузка.
Чтобы увидеть текущие ограничения, запустите: launchctl limit
или sysctl -a | grep ^kern.max
.
Смотрите также: Как сохранить настройки ulimit в macOS?