계정 별 프로세스 file descriptor(소켓 등 포함) 수를 확인 하는 방법
bash : ulimit 명령어 사용
csh : limit 명령어 사용
Soft limit ( 기본값 ) 확인
ulimit –aS ( ulimit –a )
core file size (blocks, -c)
data seg size (kbytes, -d) *******
file size (blocks, -f) *******
open files (-n) 1024
pipe size (512 bytes, -p) *******
POSIX message queues (bytes, -q) *******
Hard limit ( 최대값 ) 확인
ulimit –aH
core file size (blocks, -c) 0
data seg size (kbytes, -d) *******
file size (blocks, -f) *******
open files (-n) 2048
pipe size (512 bytes, -p) *******
POSIX message queues (bytes, -q) *******
==============================================================
계정 별 프로세스 file descriptor(소켓 등 포함) 제한 확인
일시적으로 file descriptor 수를 수정하는 것
ulimit -n 1024
지속적으로 file descriptor의 수를 변경 한 것
/etc/security/limits.conf 를 수정
limits.conf 구조
사용자 아이디 soft nofile 오픈수 ........
================================================================
시스템 file descriptors(소켓 등 포함)
kernel 2.2x
/proc/sys/fs/file-max
/proc/sys/fs/inode-max ( inode-max는 file-max의 2 ~ 3배로 설정 )
Kernel 2.4.x 이상
/proc/sys/fs/file-max
RedHat
/etc/sysctl.conf
=================================================================
프로세스 오픈 파일 개수
lsof -p PID | wc -l
==================================================================
/usr/include/bits/typesizes.h
__FD_SETSIZE 값을 수정해야
select기반의 socket 함수들은 1024 이상의 으로 연결을 할 수 있음
댓글 영역