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