Basho의 Riak 과 함께 연주 한 덕분에 이것을 알아 냈습니다 . 요세미티의 지침은 다음과 같습니다.
Mac OS X Yosemite에서 시스템 전체에서 열린 파일 제한을 조정하려면 두 개의 구성 파일을 생성해야합니다.
첫 번째는 /Library/LaunchDaemons/limit.maxfiles.plist
다음 XML 구성을 포함 하는 특성 목록 (일명 plist) 파일입니다 .
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>limit.maxfiles</string>
<key>ProgramArguments</key>
<array>
<string>launchctl</string>
<string>limit</string>
<string>maxfiles</string>
<string>65536</string>
<string>65536</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>ServiceIPC</key>
<false/>
</dict>
</plist>
이렇게하면 열린 파일 제한이 65536으로 설정됩니다. 두 번째 plist 구성 파일은 /Library/LaunchDaemons/limit.maxproc.plist
다음 내용 으로 저장해야합니다 .
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple/DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>limit.maxproc</string>
<key>ProgramArguments</key>
<array>
<string>launchctl</string>
<string>limit</string>
<string>maxproc</string>
<string>2048</string>
<string>2048</string>
</array>
<key>RunAtLoad</key>
<true />
<key>ServiceIPC</key>
<false />
</dict>
</plist>
두 plist 파일은 모두 소유 root:wheel
하고 권한이 있어야합니다 -rw-r--r--
. 이 권한은 기본적으로 있어야하지만을 실행하여 권한이 있는지 확인할 수 있습니다 sudo chmod 644 <filename>
. 위에서 설명한 단계로 인해 시스템 전체 열린 파일 제한이 다시 시작될 때 올바르게 설정되지만을 실행하여 수동으로 적용 할 수 있습니다 launchctl limit
.
시스템 레벨에서 이러한 제한을 설정하는 것 외에, 우리는 세션 수준에서 설정뿐만 아니라하여 다음 줄 추가 추천 bashrc
, bashprofile
또는 유사한 파일 :
ulimit -n 65536
ulimit -u 2048
plist 파일과 마찬가지로 귀하 bashrc
또는 유사한 파일에 -rw-r--r--
권한이 있어야합니다 . 이 시점에서 컴퓨터를 다시 시작하고 ulimit -n
터미널에 들어갈 수 있습니다. 시스템이 올바르게 구성된 경우 maxfiles가 65536으로 설정되어 있어야합니다.
다른 버전의 OS X에서는 프로세스가 약간 다르지만 해당 팀에서 잘 문서화했습니다. 이 과정을 문서화 한 Basho 팀 에 다시 한 번 감사드립니다 .
launchctl limit
나를 위해 작동하지 않았다, 2) 그 두 ulimit를 명령을 다시 시작하기 전에 실패 (내가 unnecesary 생각?), 난 그냥 그 부분을 무시했다.