Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt? Al -- Infos zu Softwarepatenten: http://swpat.ffii.org/index.de.html http://petition.eurolinux.org/index.html?LANG=de
Hallo, Am Dienstag 16 September 2003 19:32 schrieb Al Bogner:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
Du könntest für das Herunterfahren in diesem Fall "shutdown" mit Parametern benutzen, daß der Rechner erst ein paar Minuten nach Beendigung des Scriptes herunterfährt. Die Meldung könnte dann lauten. "Die Arbeiten sind erledigt und der Rechner wird in fünf Minuten heruntergefahren". Risiken und Nebenwirkungen: man shutdown -- http://webmin.mamemu.de/ WebMin-Mirror http://webmin.mamemu.de/download.html WebMin Translations Official Webmin/Usermin Translation Co-Ordinator 2003/2004 http://www.webmin.com/mailing-trans.html
Am Dienstag, 16. September 2003 19:43 schrieb Martin Mewes:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
Du könntest für das Herunterfahren in diesem Fall "shutdown" mit Parametern benutzen, daß der Rechner erst ein paar Minuten nach Beendigung des Scriptes herunterfährt.
Das nützt nichts, es kommt kein email vom cronjob an. Al
Am Mittwoch, 17. September 2003 00:10 schrieb Al Bogner:
Am Dienstag, 16. September 2003 19:43 schrieb Martin Mewes:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
Du könntest für das Herunterfahren in diesem Fall "shutdown" mit Parametern benutzen, daß der Rechner erst ein paar Minuten nach Beendigung des Scriptes herunterfährt.
Das nützt nichts, es kommt kein email vom cronjob an.
Das scheint auch logisch: Egal, mit welchen Parametern Du ein Programm aufrufst - es kommt erst zurück, wenn es beendet wurde, und in diesem Fall ist der Rechner dann aus. Versuch mal (ich habs nicht getestet, ob shutdown das mit sich machen lässt), es innerhalb des Scripts mit nohup shutdown -h now & (also im Hintergrund als Dämon) zu starten, dann wird das Programm aufgerufen und das Script kriegt sofort ohne Warten auf die Rückkehr die Kontrolle zurück. Jan
Am Mittwoch, 17. September 2003 00:52 schrieb Jan Trippler:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
Du könntest für das Herunterfahren in diesem Fall "shutdown" mit Parametern benutzen, daß der Rechner erst ein paar Minuten nach Beendigung des Scriptes herunterfährt.
Das nützt nichts, es kommt kein email vom cronjob an.
Das scheint auch logisch:
Das dachte ich auch, entspricht aber nicht ganz den Tatsachen, denn _manchmal_ kommt ein Mail vom cronjob nach dem nächsten Neustart an. Ich habe folgendes probiert: sync /sbin/shutdown -h +2 "Drücke Strg-C um abzubrechen" Ich verstehe übrigens die Auswirkungen von -t bzw. +2 in meinem Beispiel nicht. -t sec Tell init(8) to wait sec seconds between sending processes the warning and the kill signal, before changing to another runlevel. The time argument ... Second, it can be in the format +m, in which m is the number of minutes to wait. Gefühlsweise würde ich sagen, dass das "cronjob-mail" im letzten Augenblick beim Beenden der Prozesse beim Runterfahren geschrieben wird, oder vielleicht gerade nicht mehr.
nohup shutdown -h now & (also im Hintergrund als Dämon) zu starten, dann wird das Programm aufgerufen und das Script kriegt sofort ohne Warten auf die Rückkehr die Kontrolle zurück.
Das hat leider auch nicht funktioniert. Dabei ist mir noch eine andere Problematik eingefallen. Das Script dient ja in erster Linie darum Mails runterzuladen bzw. _davor_ die Virenpatterns zu aktualisieren. Die Mails werden auf Viren und auf Spam geprüft und das kostet je nach Anzahl der Mails schon einige Minuten Zeit. Was passiert nun mit den Mails, wenn nach dem Abholen, aber vor dem Ende der Virenprüfung bzw. Spamprüfung durch Spamassassin ein shutdown ausgeführt wird? Sind die Mails dann verloren? Insofern wäre es wohl besser _vor_ dem Update der Virenpattern die Mails abzuholen, denn dann besteht mehr Zeit nur Nachbearbeitung der Mails, wobei aber nicht die neuesten Virenpatterns verwendet werden. Es stellt sich auch die Frage, was passiert, wenn während des Prüfens die Virenpattern geändert werden. Al -- Infos zu Softwarepatenten: http://swpat.ffii.org/index.de.html http://petition.eurolinux.org/index.html?LANG=de
Hallo, Am Tue, 16 Sep 2003, Al Bogner schrieb:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
$ eagle & -dnh -- Immer wenn ich denke, daß ich mich gerade mit dem größten Scheiß im Universum beschäftige, kommt mein Freund Lutz und rettet mich. ;) -- fefe in dasr
Hallo, Am Tue, 16 Sep 2003, David Haller schrieb:
Am Tue, 16 Sep 2003, Al Bogner schrieb: [..] $ eagle &
*ups* flaschen Thread erwischt... -dnh -- 110: Leben und Sterben in UNIX -- kill ist ein gut zielendes Gewehr. killproc eine Schrotflinte. killall eine 10kg-Handgranate. Wenn das Programm zum Teil herausgeswappt ist, fängt es besonders ungezielt um sich zu schlagen. (Siehe dazu -e.) Häufig geht es gut. Manchmal erwischt man auch etwas zu viel. (Frank Klemm)
Am Dienstag, 16. September 2003 20:00 schrieb David Haller:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
$ eagle &
Wo kann man sich zu "eagle" einlesen? Al
Hallo, Am Tue, 16 Sep 2003, Al Bogner schrieb:
Am Dienstag, 16. September 2003 20:00 schrieb David Haller:
Ich habe in einem Bash-Script, das per cronjob ausgeführt wird, eine case-Anweisung, die den Rechner runterfährt. Hintergrund dazu: Der Rechner wird nachts automatisch hochgefahren, ladet einige Dinge aus dem Internet und fährt dann wieder runter. Da das Script nicht vollständig beendet wird, wird keine Benachrichtigung versandt. Was könnte man ändern, damit es eine Benachrichtigung gibt?
$ eagle &
Wo kann man sich zu "eagle" einlesen?
Erstmal sorry, "eagle" ist nicht das was du wohl suchst, ich bin im Thread verrutscht... rpm -qlf `which eagle` | grep 'doc\|help' waere, was passte, wenn eagle zu deiner Frage passen wuerde. Zu deiner Frage faellt mir leider auch nix ein... Ich wuerde evtl. aktiv aus dem cronjob heraus die Mail schicken, bevor das shutdown dran ist... Also z.B.: #! /bin/sh exec 1>/var/log/mein_job.log exec 2>/var/log/mein_job.err machwas machnochwas echo "Calling shutdown in 5 minutes..." | mail -s "Mein Job" root # sendmail -q shutdown -h +5 Je nachdem, wie du die logs behandelst kannst du die auch noch in die Mail einfuegen... HTH, -dnh -- Die einzige relöevante Frage lautet doch hier: "Gibt es Keckse vor und nach dem Tode?" Nun Vor dem Tode ja! Aber was ist mit dem Leben danach? Wo sind sie denn da? Wo sind die KEEEEEEEEECKSE! [WoKo in dag°]
participants (4)
-
Al Bogner
-
David Haller
-
Jan.Trippler@t-online.de
-
Martin Mewes