Um die Beschränkungen für offene Dateien systemweit in Mac OS X Yosemite anzupassen, müssen Sie zwei Konfigurationsdateien erstellen. Die erste ist eine Eigenschaftslistendatei (aka plist) in '/Library/LaunchDaemons/limit.maxfiles.plist', die die folgende XML-Konfiguration enthält:
<?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>
Dadurch wird das Limit für offene Dateien auf 65536 festgelegt. Die zweite plist-Konfigurationsdatei sollte in gespeichert werden /Library/LaunchDaemons/limit.maxproc.plist
mit folgenden Inhalten:
<?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>
Beide plist-Dateien müssen im Besitz von 'root: wheel' sein und über die Berechtigungen '-rw-r - r--' verfügen. Diese Berechtigungen sollten standardmäßig vorhanden sein. Sie können jedoch sicherstellen, dass sie vorhanden sind, indem Sie sie ausführen sudo chmod 644 <filename>
. Während die oben beschriebenen Schritte dazu führen, dass systemweite Grenzwerte für offene Dateien beim Neustart korrekt festgelegt werden, können Sie sie manuell ausführen, indem Sie sie ausführen launchctl limit
.
Zusätzlich zum Festlegen dieser Grenzwerte auf Systemebene wird empfohlen, auch auf Sitzungsebene die folgenden Zeilen an Ihre 'bashrc', 'bashprofile' oder eine analoge Datei anzuhängen:
ulimit -n 65536
ulimit -u 2048
Wie die plist-Dateien sollte Ihre bashrc oder eine ähnliche Datei haben -rw-r--r--
Berechtigungen. An diesem Punkt können Sie Ihren Computer neu starten und ulimit -n in Ihr Terminal eingeben. Wenn Ihr System korrekt konfiguriert ist, sollten Sie sehen, dass maxfiles auf 65536 gesetzt wurde.
Passen Sie die maxfiles & amp; Maxproc-Limit, wie Sie es brauchen
Bezogen aus: http://docs.basho.com/riak/latest/ops/tuning/open-files-limit/
Ändern der /etc/launchd.conf
Viele Google-Anfragen und SO-Vorschläge schienen für mich in Yosemite (10.10) nicht zu funktionieren. Was nach einigen Kombinationen von Änderungen / Neustarts / Tests funktionierte, war das Ändern (oder Erstellen, wenn es nicht existiert) /etc/sysctl.conf
Datei.
Das musste ich einbauen, damit es funktioniert
kern.maxfiles=65536
kern.maxfilesperproc=65536
Ich bin mir nicht sicher, ob 'kern.maxfiles' da drin sein muss, aber als ich es alleine hatte, hatte ich immer noch das gleiche Problem, als ich 'kern.maxfilesperproc' hinzufügte, alles hat funktioniert.