SUSE Linux Enterprise Server 10.4에서 열린 파일의 최대 한도를 영구적으로 수정하는 방법은 무엇입니까?

SUSE Linux Enterprise Server 10.4에서 열린 파일의 최대 한도를 영구적으로 수정하는 방법은 무엇입니까?
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를 설정하는 방법은 무엇입니까? 변경사항이 즉시 적용되나요?

추신: Google에서 검색했지만 영구적으로 설정할 파일을 찾을 수 없습니다.

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 # 

답변1

pam_limits(8) 모듈을 사용하고 다음 두 줄을 추가하십시오 /etc/security/limits.conf.

root hard nofile 8192
root soft nofile 8192

그러면 다음 로그인 시 루트의 RLIMIT_NOFILE 리소스 제한(소프트 및 하드)이 8192로 늘어납니다.

관련 정보