Ubuntu 14.04 LTS에서 영구 파일 제한 없음 hard

모든 사용자에 대해 최대 파일 디스크립터 수를 영구적으로 올리는 데 정확히 필요한 것이 무엇인지 알 수 없습니다.

/etc/security/limits.conf:

root    hard    nofile    1500000
root    soft    nofile    1000000
root    hard    nproc     15000
root    soft    nproc     10000
*       hard    nofile    1500000
*       soft    nofile    1000000
*       hard    nproc     15000
*       soft    nproc     10000

나는 다음에 배치했다 /etc/pam.d/common-session:

session required pam_limits.so

재부팅 후 사용자로 로그인하여 발행 ulimit -n했습니다 1024.

그 후, pam_limits.so아래의 모든 파일을 요구 했습니다 /etc/pam.d. 재부팅되었습니다. 로그인했습니다. 그런 운이 없습니다.

명령을 실행 ulimit -n 1000000한 다음 확인하면 제한이 예상대로 설정됩니다. 그래서에 배치 @reboot ulimit -n 1000000했습니다 crontab -e. 재부팅되었습니다. 로그인했습니다. 운이 없습니다.

확인 /etc/ssh/sshd_config하고 PAM이 활성화되었습니다.

나는 모든 재부팅에 한계를 설정하려고 시도했다.

/sbin/sysctl -w fs.file-max=1000000
/sbin/sysctl -p

불운.

동시 트래픽이 많은 서버가 있으며 파일 디스크립터를 지우는 데 서버에 시간이 오래 걸리기 때문에 그 한계가 필요합니다. 파일 디스크립터 한계를 영구적으로 높이려면 어떻게해야합니까?



답변

이 방법으로 모든 사람에 대한 파일 수 제한을 늘 렸습니다 (세그먼트에서 /etc/security/limits.conf).

#        - memlock - max locked-in-memory address space (KB)
#        - nofile - max number of open files (Doug: - so Samba will not complain)
* - nofile 16384
#        - rss - max resident set size (KB)
#        - stack - max stack size (KB)

그것은 12.04 서버에있었습니다. 그러나 14.04 서버에서 100000을 테스트했으며 정상적으로 작동했습니다.

~/config/security$ ulimit -n
16384