ulimit -n
Debian 6 서버의 특정 프로세스에 대한 열린 파일 ulimit()를 늘리는 데 문제가 있습니다.
AFAIK 이 경우 서버의 하드 및 소프트 제한(200000 표시)을 변경하기 위해 모든 것을 시도했지만 ulimit -n
파일을 확인하면 /proc/<process_id>/limits
여전히 이전 제한이 표시됩니다.
Limit Soft Limit Hard Limit Units
Max open files 1024 4096 files
ulimit를 영구적으로 늘리기 위해 취한 단계는 다음과 같습니다.
/etc/profile에 추가:
# set ulimit n permanetly
ulimit -n 200000
/etc/security/limits.conf에 추가:
* soft nofile 200000
* hard nofile 200000
/etc/pam.d/su에서 이 라임의 주석 처리를 해제하세요.
session required pam_limits.so
내가 무엇을 놓치고 있나요?감사합니다!
기타(관련?) 정보:
init.d
프로세스는 스크립트에서 시작됩니다.start-stop-daemon
- 디렉터리
/etc/security/limits.d/
가 비어 있습니다.
답변1
내 특별한 경우에는 내가 실행 중인 애플리케이션이 sudo를 통해 시작되었습니다. 따라서 이러한 제한 사항은 루트 사용자 계정에서 적용될 것이라고 생각합니다. 내가 틀렸어. 대신, 응용 프로그램이 루트로 실행되고 있음에도 불구하고 응용 프로그램에 적용된 제한 사항은 응용 프로그램을 시작한 사용자에게 속한 제한 사항이라는 것을 발견했습니다.