Як змінити доступ до відкритих файлів на SUSE Linux Enterprise Server 10.4 назавжди?


9
SERVER:/etc # ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
file size               (blocks, -f) unlimited
pending signals                 (-i) 96069
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 96069
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
SERVER:/etc # 

Як я можу встановити ліміт кореневого користувача від 1024 до чогось іншого, ПОСТІЙНО? Як я можу встановити ulimit в усьому світі? Чи зміна набуде чинності в даний момент?

ps: я вже googled для нього, але не можу знайти файл, де я можу його постійно встановити:

SERVER:/etc # grep -RiI ulimit * 2>/dev/null | egrep -v ":#|#ulimit"
init.d/boot.multipath:      ulimit -n $MAX_OPEN_FDS
init.d/multipathd:      ulimit -n $MAX_OPEN_FDS
rc.d/boot.multipath:        ulimit -n $MAX_OPEN_FDS
rc.d/multipathd:        ulimit -n $MAX_OPEN_FDS

і ..:

SERVER:/etc # grep -RiI 'MAX_OPEN_FDS' * 2>/dev/null
init.d/boot.multipath:MAX_OPEN_FDS=4096
init.d/boot.multipath:  if [ -n "$MAX_OPEN_FDS" ] ; then
init.d/boot.multipath:      ulimit -n $MAX_OPEN_FDS
init.d/multipathd:MAX_OPEN_FDS=4096
init.d/multipathd:  if [ -n "$MAX_OPEN_FDS" ] ; then
init.d/multipathd:      ulimit -n $MAX_OPEN_FDS
rc.d/boot.multipath:MAX_OPEN_FDS=4096
rc.d/boot.multipath:    if [ -n "$MAX_OPEN_FDS" ] ; then
rc.d/boot.multipath:        ulimit -n $MAX_OPEN_FDS
rc.d/multipathd:MAX_OPEN_FDS=4096
rc.d/multipathd:    if [ -n "$MAX_OPEN_FDS" ] ; then
rc.d/multipathd:        ulimit -n $MAX_OPEN_FDS
SERVER:/etc # 

Відповіді:


9

Використовуйте модуль pam_limits (8) та додайте наступні два рядки до /etc/security/limits.conf:

root hard nofile 8192
root soft nofile 8192

Це збільшить ліміт ресурсів RLIMIT_NOFILE (як м'який, так і жорсткий) для root до 8192 при наступному вході.


1
Я змінив його, але, мабуть, немає ефекту, коли бачите ulimit -a з коренем, навіть після повторного входу, як застосувати цю зміну до limit.conf без перезавантаження? : D
gasko peter

1
ulimit -n 8192негайно встановить обмеження для поточної оболонки та всіх її дочірніх процесів.
Петро Узель

Я приймаю .. але afaik машина потребує перезавантаження :) - до цього часу .bash_profile .. ulimit -n 8192
gasko peter

Файл /etc/security/limits.conf- це лише половина правди. Файл читається самим pam_limits.so, який, у свою чергу, має бути налаштований. Сторінка керівництва говорить, що /etc/pam.d/loginповинна містити рядок session required pam_limits.so.
U. Windl
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.