상세 컨텐츠

본문 제목

2020.11.27 file descriptor 수를 확인 하는 방법

보안/unix(유닉스)

by MustThanks 2020. 11. 27. 22:03

본문

반응형
계정 별 프로세스 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 이상의 으로 연결을 할 수 있음

관련글 더보기

댓글 영역