[LINUX] Too many open files 해결 방법
- IT/리눅스(Linux)
- 2023. 1. 7.
리눅스에서 Too many open files 에러가 발생했을 때의 해결 방법에 대해서 알아보겠습니다.
/var/log/messages 파일에 Too many open files 에러 메시지가 발생
How to solve 'Too many open files' error
프로세스가 운영체제에 요청할 수 있는 최대 Open 가능한 파일 개수에 limit가 걸려 있어 초과 시 발생하게 됩니다.
파일 오픈 limit 확인 방법
# ulimit -aS
소프트웨어에서의 파일에 관련된 설정 값들을 확인할 수 있습니다.
open files 항목을 보시면 1024로 되어 있는 것을 확인할 수 있습니다.
# ulimit -aH
하드웨어에서의 파일에 관련된 설정 값들을 확인할 수 있습니다.
# cat /proc/sys/fs/file-max
시스템 전체의 limit 설정 값 확인
file open limit 값 수정하기
/etc/security/limits.conf 에서 config 값을 수정해 줍니다.
root hard nofile 65535
root soft nofile 65535
client hard nofile 65535 (추가) -> 특정 유저계정에 지정하기 위함.
client soft nofile 65535 (추가) -> 특정 유저계정에 지정하기 위함.
* hard nofile 65535 (추가) -> 모든 유저계정에 지정하기 위함.
* soft nofile 65535 (추가) -> 모든 유저계정에 지정하기 위함.
# ulimit -n 65535
limit open files 즉시 적용
# ulimit -a
limit 값들 확인
ulimit 옵션
-a : 모든 제한 사항을 보여줌.
-c : 최대 코어 파일 사이즈
-d : 프로세스 데이터 세그먼트의 최대 크기
-f : shell에 의해 만들어질 수 있는 파일의 최대 크기
-s : 최대 스택 크기
-p : 파이프 크기
-n : 오픈 파일의 최대수
-u : 오픈파일의 최대수
-v : 최대 가상메모리의 양
-S : soft 한도
-H : hard 한도