FAQ:Arktur4/Toomanyopenfiles: Unterschied zwischen den Versionen
(Anfang) |
(3 Antworten möglich) |
||
Zeile 1: | Zeile 1: | ||
== Too many open files in system == | == Fehlermeldung "Too many open files in system" == | ||
aus einer Mail von Harry: | '''Frage:''' | ||
irgendwie läuft sich mein Arktur mit der Zeit zu. Er lässt sich dann wenn überhaupt mit etwas Glück per Konsole noch neu starten. In einer E-Mail die ''root'' immer bekommt stand: | |||
<pre> | |||
execl: couldn't exec `/bin/sh' | |||
execl: Too many open files in system | |||
</pre> | |||
'''Antwort 1:''' | |||
Dieser Einzeiler zeigt in der ersten Spalte die offenen Dateien und in der zweiten das dazugehoerige Programm. | |||
<pre> | |||
lsof | awk -F\ '{printf("%s\n",$1)}' | sort | uniq -c | sort -bg | |||
</pre> | |||
Damit kannst du das Problem verursachende Programm sofort erkennen. | |||
-- aus einer Mail von Harry. | |||
'''Antwort 2:''' | |||
Die Anzahl der maximal geoeffneten Dateien steht im procfs. Kannst du mit | |||
<pre> | |||
/sbin/sysctl fs.file-max | |||
</pre> | |||
pruefen. Bei der Arktur ist dieser Wert mit 18882 eigentlich ausreichend. | |||
Falls du noch mehr offene Dateien brauchst: | |||
<pre> | |||
/sbin/sysctl -w fs.file-max=32768 | |||
/sbin/sysctl -p | |||
</pre> | |||
und nochmal zur Kontrolle: | |||
<pre> | |||
/sbin/sysctl fs.file-max | |||
</pre> | |||
Der Wert bleibt auch nach einem Neustart erhalten. | |||
-- aus einer Mail von Harry. | |||
'''Antwort 3:''' | |||
Diesen Fehler hatte ich auch schon bei mir. Es war ein saublöder Fehler. In der Crontab stand alle 2 Minuten ein Ping-Befehl ohne die Option, diesen nur einmal ausführen. Also wurde alle 2 Minuten eine | |||
weitere Instanz gestartet. | |||
So sollte der richtige Eintrag in der "crontab" aussehen, wobei "-c 1" die Anzahl der Anfragen auf 1 begrenzt und "-w 20" den Timout auf 20 Sekunden setzt: | |||
<pre> | <pre> | ||
*/3 * * * * ping -c 1 -w 20 194.8.194.60 > /dev/null | |||
</pre> | </pre> | ||
-- aus einer Mail von Stephan Dr., Harry und Jens Fr. | |||
---- | ---- | ||
<div align="right">[[FAQ:Arktur4|zurück]] | [[Hauptseite]]</div> | <div align="right">[[FAQ:Arktur4|zurück]] | [[Hauptseite]]</div> |
Version vom 28. August 2006, 18:14 Uhr
Fehlermeldung "Too many open files in system"
Frage:
irgendwie läuft sich mein Arktur mit der Zeit zu. Er lässt sich dann wenn überhaupt mit etwas Glück per Konsole noch neu starten. In einer E-Mail die root immer bekommt stand:
execl: couldn't exec `/bin/sh' execl: Too many open files in system
Antwort 1:
Dieser Einzeiler zeigt in der ersten Spalte die offenen Dateien und in der zweiten das dazugehoerige Programm.
lsof | awk -F\ '{printf("%s\n",$1)}' | sort | uniq -c | sort -bg
Damit kannst du das Problem verursachende Programm sofort erkennen.
-- aus einer Mail von Harry.
Antwort 2:
Die Anzahl der maximal geoeffneten Dateien steht im procfs. Kannst du mit
/sbin/sysctl fs.file-max
pruefen. Bei der Arktur ist dieser Wert mit 18882 eigentlich ausreichend. Falls du noch mehr offene Dateien brauchst:
/sbin/sysctl -w fs.file-max=32768 /sbin/sysctl -p
und nochmal zur Kontrolle:
/sbin/sysctl fs.file-max
Der Wert bleibt auch nach einem Neustart erhalten.
-- aus einer Mail von Harry.
Antwort 3:
Diesen Fehler hatte ich auch schon bei mir. Es war ein saublöder Fehler. In der Crontab stand alle 2 Minuten ein Ping-Befehl ohne die Option, diesen nur einmal ausführen. Also wurde alle 2 Minuten eine weitere Instanz gestartet.
So sollte der richtige Eintrag in der "crontab" aussehen, wobei "-c 1" die Anzahl der Anfragen auf 1 begrenzt und "-w 20" den Timout auf 20 Sekunden setzt:
*/3 * * * * ping -c 1 -w 20 194.8.194.60 > /dev/null
-- aus einer Mail von Stephan Dr., Harry und Jens Fr.