Re: Fw: SuSE 9.0 - [cron] <defunct>
![](https://seccdn.libravatar.org/avatar/a9c6071a266b56a1fddc08205d30a2db.jpg?s=120&d=mm&r=g)
Hallo Jan, Hallo ihr Alle, also was nen Zombie Prozess ist weis ich und wie der theoretisch hervorgerufen wird auch. Ich hab denke ich recht gut beschrieben was mein Prob ist, nämlich das meine Cronjobs alls nen zombie Prozess hinterlassen, wenn sie laufen. ABER SIE LAUFEN. Die Logeinträge sind ganz normal, keine Fehlermeldungen: Feb 1 20:48:00 zeus /USR/SBIN/CRON[5870]: (root) CMD (/usr/bin/mrtg /etc/mrtg-eth0.cfg) Feb 1 20:48:00 zeus /USR/SBIN/CRON[5872]: (root) CMD (/usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg) Feb 1 20:49:00 zeus /USR/SBIN/CRON[5914]: (root) CMD (/usr/bin/mrtg /etc/mrtg-eth0.cfg) Feb 1 20:49:00 zeus /USR/SBIN/CRON[5916]: (root) CMD (/usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg) Feb 1 20:50:00 zeus /USR/SBIN/CRON[5961]: (root) CMD (/usr/bin/mrtg /etc/mrtg-eth0.cfg) Feb 1 20:50:00 zeus /USR/SBIN/CRON[5963]: (root) CMD (/usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg) und mein crontab -l sagt u.a. folgendes: * * * * * /usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg * * * * * /usr/bin/mrtg /etc/mrtg-eth0.cfg Wenn ich wie schon gesagt die zwei Cronjobs nur alle zwei Minuten laufen lasse, so habe ich eine Minute lang die <defunct> Einträge in meiner Liste, die zweite Minute nicht mehr. Dann, wenn die Jobs wieder aufgerufen werden hab ich wieder diese Zombie Einträge drin ... aber die Jobs laufen alle sauber und machen das was sie sollen. Mich "beunruhigen" nur diese Zombie Prozesse, zumal ich "in Spitzenzeiten" sieben bis zehn Jobs gleichzeitig laufen habe ( Nachts ) und keine zehn <defunct> haben will. Ideen? Hilfen? Gruß Thomas ----- Original Message ----- From: Jan Trippler To: suse-linux@suse.com Sent: Sunday, February 01, 2004 7:45 PM Subject: Re: Fw: SuSE 9.0 - [cron] <defunct> Am Sonntag, 1. Februar 2004 16:56 schrieb Thomas Hendrich:
seitdem ich subscribed bin ist ne verdammt große Menge an eMails hier über die Liste gegangen, aber leider hat sich gar niemand zu meinem "Problem" geäußert bis auf einen, der ebenso diese Fehlermeldung hat, aber auch nicht weiter kommt.
Niemand da draussen der ähnliche Probleme hat? Niemand da draussen der ne Ahnung davon hat und den Tip geben kann?
Sowas kann schon mal vorkommen. Nicht alle lesen die Liste von vorn bis hinten, nicht alle lesen sie täglich, nicht alle wissen alles (eher keiner ;), nicht alle haben immer Zeit, in *Hotline*-Zeit zu antworten, nicht alle raten gern (s. u.).
----- Original Message ----- From: Thomas Hendrich To: suse-linux@suse.com Sent: Thursday, January 29, 2004 9:35 PM Subject: SuSE 9.0 - [cron] <defunct>
*urgs* muss dieser Sermon sein? 1 Zeile reicht.
ich habe folgende Frage / folgendes Problem. Ich betreue einen Server auf dem SuSE 9 vorinstalliert ist. Ich habe verschiedene cronjobs angelegt ( mit crontab -e ). Unter anderem drei jobs, die jede Minute laufen sollen.
Wenn ich diese Jobs "aktiviere" finde ich immer in meiner Prozessliste die drei Einträge
root 2437 0.0 0.0 0 0 ? Z 21:22 0:00 [cron] <defunct> root 2439 0.0 0.0 0 0 ? Z 21:22 0:00 [cron] <defunct> root 2441 0.0 0.0 0 0 ? Z 21:22 0:00 [cron] <defunct> [...]
Was sind das für Jobs, wie sehen die crontab-Einträge aus, was hast Du getan, um dem Fehler auf die Spur zu kommen, was für Ergebnisse hast Du erhalten, was sagen die Logfiles (z. B. /var/log/messages)? Offenbar sind alle Glaskugeln hier in Reparatur - es wäre also besser, wenn Du ein paar mehr Infos lieferst, damit wir nicht raten müssen ;) Zum Thema *defunct*: man -P "less +'/defunct'" ps Du willst Dich zum Thema *Zombies* schlau machen. Jan -- Um die Liste abzubestellen, schicken Sie eine Mail an: suse-linux-unsubscribe@suse.com Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: suse-linux-help@suse.com
![](https://seccdn.libravatar.org/avatar/735ea797d876adb026ae955e8adbf597.jpg?s=120&d=mm&r=g)
Am Sonntag, 1. Februar 2004 20:58 schrieb Thomas Hendrich:
also was nen Zombie Prozess ist weis ich und wie der theoretisch hervorgerufen wird auch.
Prima
Ich hab denke ich recht gut beschrieben was mein Prob ist, nämlich das meine Cronjobs alls nen zombie Prozess hinterlassen, wenn sie laufen. ABER SIE LAUFEN.
Nein, das hast Du eben nicht. Dass Du mrtg jede Minute zweimal aufrufst und jede Minute einen neuen mrtg mit der gleichen Konfig (also wahrscheinlich auch mit den gleichen Ausgabedateien?) gestartet hast, sehe ich erst aus Deiner crontab. Kann es sein, dass die Prozesse sich gegenseitig in die Quere kommen, weil sie noch laufen, wenn der nachfolgende cron-Job neu startet? Unter: http://www.linux-magazin.de/Artikel/ausgabe/2002/09/mrtg/mrtg.html steht u. a. folgendes: <schnipp> Ein Cron-Job muss das MRTG-Kommando alle fünf Minuten aufrufen. Der Zeitabstand ist entscheidend, damit MRTG die Durchschnittswerte korrekt berechnet. Wie groß das Intervall ist, lässt sich in der Konfiguration ändern. <schnapp> Lass Dir doch mal die Start- und Stopp-Zeiten der einzelnen Jobs protokollieren. Ergänze die crontab-Zeilen wie folgt (in einer Zeile): * * * * * /bin/date >>/tmp/mrtg.log; echo $$ >>/tmp/mrtg.log; /usr/bin/mrtg ... ; date >>/tmp/mrtg.log Und wenn Du feststellst, dass sich die Jobs überschneiden, dann schau doch mal, ob Du mit geeigneten (größeren) Intervallen das gleiche Verhalten immer noch hast.
Die Logeinträge sind ganz normal, keine Fehlermeldungen: Feb 1 20:48:00 zeus /USR/SBIN/CRON[5870]: (root) CMD (/usr/bin/mrtg /etc/mrtg-eth0.cfg) Feb 1 20:48:00 zeus /USR/SBIN/CRON[5872]: (root) CMD (/usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg) Feb 1 20:49:00 zeus /USR/SBIN/CRON[5914]: (root) CMD (/usr/bin/mrtg /etc/mrtg-eth0.cfg) Feb 1 20:49:00 zeus /USR/SBIN/CRON[5916]: (root) CMD (/usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg) Feb 1 20:50:00 zeus /USR/SBIN/CRON[5961]: (root) CMD (/usr/bin/mrtg /etc/mrtg-eth0.cfg) Feb 1 20:50:00 zeus /USR/SBIN/CRON[5963]: (root) CMD (/usr/bin/mrtg /etc/mrtg-qmailmrtg7.cfg) [...]
Irgendwie sehen Deine Logzeilen bei mir komisch aus. Was für ne Zeilenlänge hast Du denn im Mailclient? Jan
![](https://seccdn.libravatar.org/avatar/735ea797d876adb026ae955e8adbf597.jpg?s=120&d=mm&r=g)
Am Sonntag, 1. Februar 2004 21:45 schrieb Jan Trippler: [...]
Lass Dir doch mal die Start- und Stopp-Zeiten der einzelnen Jobs protokollieren. Ergänze die crontab-Zeilen wie folgt (in einer Zeile): * * * * * /bin/date >>/tmp/mrtg.log; echo $$ >>/tmp/mrtg.log; /usr/bin/mrtg ... ; date >>/tmp/mrtg.log [...]
Ähm, besser (weil eindeutig zu identifizieren) wäre folgende Syntax (eine Zeile): * * * * * PID=$$; /bin/date >/tmp/mrtg$PID.log; /usr/bin/mrtg ... ;date >>/tmp/mrtg$PID.log Dann kriegst Du für jeden Job eine eigene Datei und kannst Start- und Endezeiten vergleichen. Jan
participants (2)
-
Jan.Trippler@t-online.de
-
Thomas Hendrich