所以在一个系统上,我的值非常开放:
$ ulimit -a | grep mem
max locked memory (kbytes, -l) 40000
max memory size (kbytes, -m) unlimited
virtual memory (kbytes, -v) unlimited
另一个系统有更多限制值,但我不能在我的生活中找到32MB上限(尽管错误拼写是32MB)的位置:
# ulimit -a | grep mem
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
virtual memory (kbytes, -v) unlimited
第二个系统是RHEL 5.5盒子。我希望至少为一个用户增加这个限制 - 我需要更大的APC mmap内存分配,但是如果没有达到上述限制,我不能超过30 MB,我宁愿不破解提供的apache init脚本。我应该在哪里尝试覆盖系统默认值,以便我可以映射更大的内存段?在apache用户的limits.conf中执行它并没有做很多事情;可能是因为init脚本没有通过PAM做任何事情。
答案 0 :(得分:0)
如果您尝试的用户粒度设置不起作用,则应确保您已正确匹配哪个用户达到了限制。
您还应该能够将这样的行添加到limits.conf:
* hard memlock 40000
这将改变所有用户的默认设置。
来自limits.conf联机帮助页:
The syntax of the lines is as follows:
<domain> <type> <item> <value>
The fields listed above should be filled as follows:
<domain>
[snip]
· the wildcard *, for default entry.