На странице руководства Ulimit предлагается установить это с помощью параметра -r, но он действителен только для пользователя root, и нет эквивалента для его установки через / etc / security / limits?
Любые идеи?
Вы сказали AIX, но я думаю, что в случае с Linux это будет -u
концевой выключатель. В Linux это означает «процессы», но в bash ulimit - это просто интерфейс для системного вызова setrlimit. Это можно увидеть, запустив strace bash -c 'ulimit -u 10'
который возвращает:
setrlimit(RLIMIT_NPROC, {rlim_cur=10, rlim_max=10}) = 0
На странице руководства для setrlimit указано:
RLIMIT_NPROC Максимальное количество процессов (или, точнее в Linux, потоки), который может быть создан для реального идентификатора пользователя вызывающего процесса. При достижении этого предела fork (2) выдает ошибку EAGAIN.
Так, может, и в AIX то же самое? Эта ссылка заявляет: «AIX не определяет ресурсы RLIMIT_NPROC или RLIMIT_MEMLOCK.», но вы можете найти более точный ответ на сайте developerworks.
Для проблемы с разрешениями решением может быть установка ограничения с помощью root, а затем su для пользователя, для которого вам нужно увеличить лимит. В прошлом мне приходилось делать это для других ограничений ресурсов, например, для максимального количества открытых файлов. Limits.conf не применялся, поэтому мне пришлось использовать sudo или su от root, а затем ограничение было унаследовано.