Ich verwende tmux und erstelle viele Sitzungen auf verschiedenen Servern. Nach dem Öffnen von 128 kann ich keine neuen oder neuen Registerkarten mehr im Terminal öffnen. Die Fehlermeldungen lauten:
forkpty: Device not configured
Could not create a new process and open a pseudo-tty.
Kann ich die Anzahl der Ptys auf irgendeine Weise erhöhen?
Antworten:
(Getestet unter OS X 10.8.2; andere Versionen können geringfügig abweichen.)
Sie können das Systemlimit für ptys mit dem Befehl sysctl ändern .
Dadurch sollten Sie sofort mehr ptys öffnen können.
Um dies nach jedem Neustart automatisch einzustellen, fügen Sie die folgende Zeile in die
/etc/sysctl.conf
Datei ein:(Hinweis: Ich habe dies nicht versucht, aber nach einem Blick auf den Quellcode sieht es so aus, als würde launchd diese Datei verarbeiten.)
Diese Datei ist möglicherweise nicht vorhanden. Wenn Sie es erstellen müssen, sollten Sie wahrscheinlich sicher sein, dass es über eingeschränkte Eigentumsrechte und Berechtigungen verfügt:
Möglicherweise stoßen Sie auf andere Ressourcenbeschränkungen pro Prozess oder pro Benutzer (z. B. Gesamtzahl der Prozesse pro Benutzer und Gesamtzahl der Deskriptoren für offene Dateien pro Prozess).
quelle
sudo sysctl kern.tty.ptmx_max
gibt zurück,999
was korrekt ist. Fehlt mir etwas?ulimit
in Bash ) begrenzt. Diese Art von Limits wird von übergeordneten Prozessen geerbt. Um sie für tmux zu ändern, müssen Sie sie in (z. B.) einer Shell ändern und dann Ihren tmux- Server neu starten . Versuchen Sie einenlaunchctl.conf
, der einenlimit
Befehl verwendet, um die Änderung "dauerhaft" zu machen .ulimit -a
ein Limit von 256 Dateideskriptoren. Das Anrufen hat aberulimit -n 2000
total funktioniert.