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


12

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

/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

불운.

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

답변:


11

이 방법으로 모든 사람에 대한 파일 수 제한을 늘 렸습니다 (세그먼트에서 /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

2
여전히 효과가 없었습니다. 당신은 session require pam_limits.so어디에나 배치해야 했습니까 ?
w3rthl3ss

아니요. ulimit가 1024가되기 전과 14.04 테스트 서버의 ulimit가 100000이 된 후 sudo로 편집 한 후 다시 부팅했습니다.
Doug Smythies

/etc/security/limits.conf다른 모든 것을 재고 조정 으로 되 돌리면됩니다. 감사!
w3rthl3ss 2

재부팅 할 필요없이 로그 아웃 / 로그인 만하면됩니다.
Jacob

@ w3rthl3ss limit.conf는 어떤 문제와 참조 목적을 가지고있는 것 같습니다
Rizwan Patel
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.