OS X पर खुली फ़ाइल सीमा को कौन सी कमांड / कॉन्फ़िगरेशन फ़ाइल नियंत्रित करती है? क्या OS X 10.5 / 10.6 / 10.7 के लिए एक अलग कमांड है? नीचे मैंने जो विकल्प तलाशे हैं ulimit, वे हैं sysctl, औरlaunchctl
"बहुत अधिक खुली फाइलें" जाहिरा तौर पर तेंदुए पर एक सामान्य त्रुटि है, शायद ओएस एक्स के अन्य संस्करण:
खुली फ़ाइल सीमाएँ देखने के कई (संबंधित) तरीके हैं:
$ ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 2048
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) 512
virtual memory (kbytes, -v) unlimited
$ launchctl limit
cpu unlimited unlimited
filesize unlimited unlimited
data unlimited unlimited
stack 8388608 67104768
core 0 unlimited
rss unlimited unlimited
memlock unlimited unlimited
maxproc 1024 2048
maxfiles 2048 4096
$ sysctl -a | grep files
kern.maxfiles = 32768
kern.maxfilesperproc = 16384
kern.maxfiles: 32768
kern.maxfilesperproc: 16384
kern.num_files: 2049
उपरोक्त कुछ पोस्टों में यह दावा किया गया है कि इन्हें निम्न आदेशों के साथ संशोधित किया जा सकता है:
sudo launchctl limit maxfiles 16384 32768
sudo ulimit -n 32768
sudo sysctl -w kern.maxfilesperproc=16384
sudo sysctl -w kern.maxfiles=32768
हालांकि, ऊपर बताए गए आदेशों से बाहर है, केवल sysctlआदेशों किसी भी जाहिरा तौर पर प्रभाव है (यानी ulimit -nऔर launchctl limit, ऊपर बताए गए आदेशों दर्ज किया गया है के बाद कोई परिवर्तन नहीं दिखा सकते हैं जब sysctl -aअनुरोध किए गए परिवर्तन दिखाता है)।
ओएस के लिए इन मापदंडों को बदलने के लिए संबंधित स्थान हैं:
/etc/sysctl.conf
/etc/launchd.conf
मैंने एक उत्तर की भी खोज की जिसमें लिखा था कि ulimitकेवल वर्तमान शेल को नियंत्रित करता है।
मैं MacOS पर अधिकतम फ़ाइलों / अधिकतम खुली फ़ाइलों की सीमाओं को कैसे समायोजित कर सकता हूं ?