Использование ulimit
команды только изменяет ограничения ресурсов для текущей оболочки и ее дочерних sudo ulimit
элементов и создает корневую оболочку, регулирует ее пределы и затем завершает работу (таким образом, насколько я вижу, реального эффекта нет).
Чтобы превысить 12288, вам нужно настроить ядро kern.maxfiles
и kern.maxfilesperproc
параметры, а также (по крайней мере, в соответствии с этой записью в блоге, которая является кратким описанием этого обсуждения ) ограничение на запуск. Вы можете использовать, launchctl limit
чтобы настроить все это сразу:
sudo launchctl limit maxfiles 1000000 1000000
Чтобы сделать это постоянным (т.е. не сбрасывать при перезагрузке), создайте /etc/launchd.conf
содержащий:
limit maxfiles 1000000 1000000
Затем вы можете использовать ulimit
(но без sudo
), чтобы настроить ограничение процесса.
Если этого не происходит, возможно, вы работаете с ограничениями размера в ядре. Если ваша модель поддерживает это, может помочь загрузка ядра в 64-битном режиме .