nofile
저는 꽤 큰 프로젝트를 진행하고 있는데 최근에 설정을 500,000 이상으로 늘려야 했습니다 . 나는 노력했다/etc/security/limits.d/99-users-nofile.conf에서 5백만으로 변경하세요., 하지만 더 이상 로그인이 허용되지 않았습니다. 다른 분들도 같은 문제 겪는 걸 보고 결국 대체 미디어에서 부팅해서 값을 다시 변경해 보았으나 전혀 모르겠습니다.실제 최대값 은 얼마입니까 nofile
?
답변1
내 Ubuntu 20.04에서 제한은 nofile
(2^20)입니다.
* hard nofile 1048576
이상한 점은 1을 더하면 524288(2^19)이 된다는 점입니다.
이 제한은 프로세스별로 적용됩니다. 모든 프로세스의 총 제한은 2^63-1입니다.
$ cat /proc/sys/fs/file-max
9223372036854775807
현재 열려 있는 파일 수가 첫 번째 열입니다.
$ cat /proc/sys/fs/file-nr
74144 0 9223372036854775807
내 서버에서 다음을 실행했습니다.
ulimit -n 1048576
open_files() { perl -E 'for(1..'$1') { open($f{$_},"<","/dev/null") || die $_;} say "Done"; sleep 10000'; }
export -f open_files
seq 20000 | time parallel --nice 10 -uj0 open_files 30000
문제 없이 실행되고 600M 파일이 열립니다.
$ cat /proc/sys/fs/file-nr
600320672 0 9223372036854775807
따라서 실제 한도는 분명히 더 높습니다.