Too many open files in system

anxion

New Member
Hallo,

bei meinem VServer (Debian Sarge) erhalte ich seit ungefähr einer Woche regelmäßig die folgende Meldung:

Too many open files in system

Auf dem Server läuft ein CMS (php & mysql) und ein Forum.
Zudem sind nur 5 Email-Adressen angelegt.

Nicht zuviel für einen VServer - Das dachte ich mir zumindest :mad:

Nun die wichtigsten Ausgaben:

Code:
lsof -n|grep -oE '^[a-z]+'|sort|uniq -c|sort -n
      6 init
      8 grep
      8 inetd
      8 logger
      8 uniq
     11 bash
     11 cron
     12 portmap
     16 famd
     16 nscd
     16 sort
     19 freshclam
     19 lsof
     24 syslogd
     25 pickup
     25 qmgr
     25 verify
     31 named
     35 saslauthd
     51 courierlo
     52 couriertc
     54 sshd
     79 spamd
    101 amavisd
    103 master
    117 authdaemo
    171 mysqld
    233 apache

1300 offene Dateien also ca. insgesamt.

Code:
cat /proc/user_beancounters
Version: 2.5
       uid  resource                     held              maxheld              barrier                limit              failcnt
   2059145: kmemsize                  5631797              8003600              8467453              9314198                    0
            lockedpages                     0                    5                  344                  344                    0
            privvmpages                 65070                93146               131072               139264                    0
            shmpages                      655                 2911                19567                19567                    0
            dummy                           0                    0                    0                    0                    0
            numproc                        62                   95                  128                  128                    0
            physpages                   21494                27726                    0  9223372036854775807                    0
            vmguarpages                     0                    0                65536  9223372036854775807                    0
            oomguarpages                21505                31730                65536  9223372036854775807                    0
            numtcpsock                     18                   96                  172                  172                    0
            numflock                       11                   35                  224                  246                    0
            numpty                          1                    2                   16                   16                    0
            numsiginfo                      0                   59                  512                  512                    0
            tcpsndbuf                  173456               483400              1416560              2768240                    0
            tcprcvbuf                  169552               541552              1416560              2768240                    0
            othersockbuf               168984               489584               655717              1153621                    0
            dgramrcvbuf                     0                42240               655717               655717                    0
            numothersock                  110                  208                  228                  228                    0
            dcachesize                1061843              1265674              1503190              1548286                    0
            numfile                      2110                 3008                 3008                 3008                96915
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            numiptent                      31                   32                   64                   64                    0

Der failcount ist - naja... zu hoch

Code:
cat /proc/sys/fs/file-nr
132192  0       524288

Cronjobs laufen 4 Stück:

1x Email mit der Serverstatistik an mich.
1x Speichern der Serverstatistik (loadavg)
1x php4 abgelaufene sessions entfernen
1x php5 abgelaufene sessions entfernen

Das ulimit habe ich schon hochgesetzt, den Postfix habe ich auf 10 Instanzen gedrosselt...

Den Verursacher bekomme ich leider nicht ohne Hilfe raus.

Bitte helft mir :)

anxion
 
Deine Zählweise ist leider nicht korrekt. Bei der Virtualisierung mit OpenVZ (oder Virtuozzo) werden die Filehandles aus Gründen der Effizienz immer in Pools von 8 alloziert. D.h. wenn eine Programm-Instanz 9 Filehandles benötigt, werden trotzdem 16 berechnet.
Du musst also beim lsof jede ProzessID zählen und das dann jeweils auf die nächste 8-er Zahl aufrunden.

Dann wird Dein Ergebnis besser mit den UBC übereinstimmen (warum der UBC-Wert (2110) trozdem nicht durch 8 teilbar ist, konnte ich bisher nicht rausfinden...:confused:)

Viele Grüße,
LinuxAdmin
 
bei meinem VServer (Debian Sarge) erhalte ich seit ungefähr einer Woche regelmäßig die folgende Meldung:
Regelmaessig? Ggf. immer zu einem bestimmten Zeitpunkt oder in einem bestimmten Rhythmus? ggf. nochmal Cronjobs checken? Ich vermute Du hast mehr als die 4 angegebenen Cronjobs. Wirklich sonst nichts in cron.daily cron.d oder cron.hourly?

Ich wuerde Dir empfehlen ggf. ein Skript zu schreiben welches die offenen Dateien regelmaessig ueberprueft oder die Prozessliste (mit Timestamp) in eine Datei schreibst. So kannst Du beim naechsten Ueberschreiten der numfiles mal nachschauen welche Prozesse zu dem Zeitpunkt liefen was Dir vermutlich einen weiteren Anhaltspunkt gibt.
 
Wirklich sonst nichts in cron.daily cron.d oder cron.hourly?

Ein paar Logrotates habe ich noch daily... das war es dann aber wirklich.

Die Last bzw. die Fehler konzentrieren sich auf die Zeiträume:
14-16 Uhr und 18-20 Uhr.

Gestern nacht von 00:30 bis 01:00h war es besonders schlimm. Ich werde das weiter beobachten.

Die Logrotates kann ich mir aber kaum als Fehlerursache vorstellen.
Mein /var/log ist noch recht überschaubar.

Gruß,
anxion
 
Würde Postfix noch weiter einschränken, denke bei 5 Adressen ist das Mailaufkommen nicht so hoch. Ich konnte ähnliche Probleme bei einem vServer nur durch abschalten von Spamassassin und Clamscan beheben.

lg
Basti
 
Hi,

ich tippe auch auf deine Amavis/Freshclam-Prozesse... fahr die mal runter und prüf dann nochmal deine Numfiles.

-W
 
Ich habe courier, dovecot, famd deinstalliert/deaktiviert, und amavisd und spamd läuft bei mir auch nicht. Ich komme auf 26-30 Prozesse. numfile ist trotzdem ein Problem (logfiles).

Code:
system: init syslogd klogd atd cron
database: mysqld_safe mysqld 
webserver: apache
postfix: logger master qmgr pickup
shell: sshd su bash sh 
monitoring: atop munin-node munin-cron munin-graph
 
master.cf

Hi, versuche mal deine master.cf zu optimieren. Am besten den Defaultwert - welcher 100 bedeutet auf 10 zu stellen. Siehe dazu die master.cf unten.

Ich habe mich langsam herangetastet indem ich mir auf einen Schlag 1000 mails mit je 5 KB zugestellt habe:
smtp-source -c -l 5000 -m 1000 -s 100 -t meinemail@mydn.com -f meinemail@mydn.com mail.mydn.com:25

bei einem Wert von 50 hat mich postfix ständig im Stich gelassen :-) ... Mein Tipp mit 30 beginnen und langsam immer weniger gleichzeitige Prozesse zulassen.

smtp inet n - - - 10 smtpd
#628 inet n - - - - qmqpd
pickup fifo n - - 60 1 pickup
cleanup unix n - - - 0 cleanup
qmgr fifo n - - 300 1 qmgr
#qmgr fifo n - - 300 1 oqmgr
rewrite unix - - - - - trivial-rewrite
bounce unix - - - - 0 bounce
defer unix - - - - 0 bounce
trace unix - - - - 0 bounce
verify unix - - - - 1 verify
flush unix n - - 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - - - 10 smtp
relay unix - - - - - smtp
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - - - - showq
error unix - - - - - error
local unix - n n - 10 local
virtual unix - n n - 10 virtual
lmtp unix - - n - 10 lmtp
anvil unix - - n - 1 anvil
 
Last edited by a moderator:
Hallo !
Ich habe seit einer Woche die gleichen Probleme. Mein Vserver (Sarge) ist bei server4you und es läuft eigentlich nur Apache2 mit Joomla 1.0.13.
 
Servus miteinand,

ich habe mit meinem Server (S4U) das gleiche Prob: too many open files in sytem.

Nur kenne ich mich mit dem Gurken nicht aus (weder Linux noch Postfix). Wer kann mir dennoch helfen, dass ich meinen Postfix wieder ans laufen bekomme?

Hier ein paar Auszüge:

Code:
lsof -n|grep -oE '^[a-z]+'|sort|uniq -c|sort -n
      4 init
      7 klogd
      8 grep
     14 pipelog
     16 sort
     17 cron
     19 lsof
     21 freshclam
     23 clamd
     23 xinetd
     24 syslogd
     26 saslauthd
     34 bash
     78 sshd
     90 mysqld
    248 httpd

Code:
cat /proc/user_beancounters
Version: 2.5
       uid  resource                     held              maxheld              barrier                limit              failcnt
    xxxxxx: kmemsize                  2517348              6148878              8467453              9314198                    0
            lockedpages                     0                    0                  344                  344                    0
            privvmpages                 43251                58866                98304               106496                    0
            shmpages                      641                 1313                19567                19567                    0
            dummy                           0                    0                    0                    0                    0
            numproc                        25                   66                  128                  128                    0
            physpages                   14123                25013                    0  9223372036854775807                    0
            vmguarpages                     0                    0                65536  9223372036854775807                    0
            oomguarpages                15457                25013                65536  9223372036854775807                    0
            numtcpsock                      8                  116                  172                  172                    0
            numflock                        6                   38                  224                  246                    0
            numpty                          1                    2                   16                   16                    0
            numsiginfo                      0                   34                  512                  512                    0
            tcpsndbuf                   77352               632880              1416560              2768240                    0
            tcprcvbuf                  131072               330736              1416560              2768240                    0
            othersockbuf                 9376               449296               655717              1153621                    0
            dgramrcvbuf                     0                10560               655717               655717                    0
            numothersock                   12                  228                  228                  228                 1014
            dcachesize                 565434              1042956              1503190              1548286                    0
            numfile                      1100                 3008                 3008                 3008                 5158
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            dummy                           0                    0                    0                    0                    0
            numiptent                      32                   32                   64                   64                    0

Code:
#  -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
#628      inet  n       -       n       -       -       qmqpd
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay     unix  -       -       n       -       -       smtp
        -o fallback_relay=
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
localhost:10025 inet    n       -       n       -       -       smtpd -o content_filter=
scache    unix  -       -       n       -       1       scache



Was kann ich dagegen tun? Benötigt ihr zur Fehleranalyse noch mehr Infos? Dann bitte aber auch die Abfragesequenz dazu. Bin aboluter Newbee!! Und würde meinen Postfix gerne wieder laufen lassen :o

Merci
Rob
 
Hi, versuche mal deine master.cf zu optimieren. Am besten den Defaultwert - welcher 100 bedeutet auf 10 zu stellen. Siehe dazu die master.cf unten.
...
bei einem Wert von 50 hat mich postfix ständig im Stich gelassen :-) ... Mein Tipp mit 30 beginnen und langsam immer weniger gleichzeitige Prozesse zulassen.

Guten Abend,

was kann ich als Qmailer gegen Überlastung tun? Ich habe Spamassasin und einen Virenscanner. Bei 50 Mails mit Anhang auf einmal bricht der VServer zusammen, zu "to many open files" ...

Grüße
 
Last edited by a moderator:
Ich hatte anfang bei meinem kleinsten VServer auch viele Probleme mit den Numfiles. Dann habe ich Postfix runtergeschmissen und Sendmail drauf gemacht, ebenso Plesk runter und Confixx dafür drauf und seither ist gut. Da ist jetzt sogar noch gut Platz für Spamassassin.

Gruss
Markus
 
Apache und MYSQL fresen Rescourcen

Hi!

Ich habe bei Pretago einen Vserver. Speicher und CPU ruhen sich aus. Nur das numfile Limit macht probleme. Das Limit ist bei 2500. MYSQL und Apache verwenden beide jeweils schon knapp 400, dabei betreibe ich gerade mal 4 Datenbanken und 3 Websites. Apache ist auf 3 Prozesse Mysql auf max. 8 DB connection, Postfix ist auf 5 Prozesse Courier ist auf 2 Kinder gesetzt.

Code:
lsof -n|grep -oE '^[a-z]+'|sort|uniq -c|sort -n
      8 klogd
      9 grep
      9 uniq
     10 init
     13 pipelog
     13 portmap
     14 couriertc
     14 syslogd
     15 inetd
     16 bash
     18 cron
     18 sort
     21 lsof
     24 courierlo
     28 pickup
     28 qmgr
     33 cleanup
     62 local
     68 saslauthd
     71 sshd
     73 miniserv
     76 spamd
     77 imapd
     85 authdaemo
    117 master
    303 apache
    426 mysql

cat /proc/user_beancounters
Version: 2.5
resource                     held              maxheld                 barrier                limit              failcnt
kmemsize                  3968450              3984869             1   2582912             14680064                    0
lockedpages                     0                    0                     344                  344                    0
privvmpages                 18799                18834                   65536                67072                   12
shmpages                      641                  641                   19567                19567                    0
dummy    0                    0  922337203685   4775807  9223372036854775807                    0
numproc 36                   36                     128                  128                    0
physpages                   15288                152880           2147483647                    0
vmguarpages                     0                    0                   24576           2147483647                    0
oomguarpages                15288                15288                   24576           2147483647                    0
numtcpsock                     16                   18                     256                  256                    0
numflock 8                    8                     224                  246                    0
numpty   1                    1                      16                   16                    0
numsiginfo                      0                    1                     256                  256                    0
tcpsndbuf                  181952               190688                 1416560              2768240                    0
tcprcvbuf                  172096               180560                 1416560              2768240                    0
othersockbuf               177552               177552                  655717              1153621                    0
dgramrcvbuf                     0                    0                  132096               132096                    0
numothersock                  110                  110                     256                  256                    0
dcachesize                      0                    0                 3002127              3032191                    0
numfile                      1456                 1465                    2500                 2500                 2483
dummy    0                    00                    0                    0
dummy    0                    00                    0                    0
dummy    0                    00                    0                    0
numiptent                      14                   14                      64                   64                    0


Ich bin mit meinem Laien-Latein am Ende. Danke für Eure Tipps.
 
Wechsele den Provider!

... ein numfile von 2500 ist -äh- sehr wenig

beim mir sieht das so aus:
Code:
resource                     held              maxheld              barrier                limit              failcnt
numfile                      3293                 5197                 6944                 6944                    0

und richtig glücklich bin ich damit auch nicht.

Gruß, Peter
 
Back
Top