Der Fehler „Too many open files in system“ treibt mich in der letzten Zeit fast in den Wahnsinn. Ich habe schon einiges versucht, um ihn los zu werden, aber er kehrt immer zurück. In unregelmäÃ?igen Abständen. Ein paar Dienste abschalten war bis jetzt das einzige was wirklich geholfen hat. Aber was ist ein Server ohne Apache und Mail?
Wildes gegoogle hat mich hoffen lassen. So habe ich unter Anderem den Befehl ulimit entdeckt.
# ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
pending signals (-i) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) unlimited
stack size (kbytes, -s) 8192
cpu time (seconds, -t) unlimited
max user processes (-u) unlimited
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
Aha! „open files“ hochsetzen dachte ich mir.
# ulimit -n 4096
Hat aber leider nichts gebracht. AuÃ?erdem wird der Wert nach einer gewissen Zeit wieder auf 1024 zurückgesetzt.
Der Fehler tritt zwar nicht mehr so oft auf weil ich ein paar kleine Dienste beendet habe (warum hatte ich eigentlich nen IRC-Server am laufen?), aber ich will ihn endgültig los werden.
Hat einer der lesenden vielleicht einen Tipp, wie ich diesem Linux-Vserver (server4you) beibringe, mehr simultane Filehandles zu akzeptieren? Oder wie ich dem Apache sage, dass er nicht ganz so viele Handles öffnet? Denn ich habe die Vermutung, dass er auch ohne >1000 Handles laufen sollte.
# lsof -n|grep -oE '^[a-z]+'|sort|uniq -c|sort -n
128 authdaemo
159 mysqld
178 saslauthd
1250 apache
*arrr*