Bekomme Crontab nicht zum Laufen

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo zusammen,

    laut den Beschreibungen im Internet sollte das konfigurieren eines Cronjobs ja gar nicht so schwer sein...aber irgendwie bekomme ich es einfach nicht zum Laufen :huh:
    Hier ein paar Infos für euch:

    Ich möchte mein Testskript jede Minute aufrufen...diese Skript besteht nur aus einem Print-Befehl und liegt in /home/pi/pythonapp/test.py. Rufe ich dieses Skript mit Python auf, wird "Halli hallo" in der Putty-Konsole ausgegeben.
    Mit dem Befehl sudo crontab -e habe ich den Cronjob angelegt:
    * * * * * python /home/pi/pythonapp/test.py

    Jetzt würde ich erwarten, dass jede Minute "Halli hallo" in der Konsole ausgegeben wird...aber da tut sich rein gar nichts. Auch neustarten des Pis brachte keine Verbesserung. Hier ist noch ein Auszug aus dem Logfile...


    Schon mal vielen Dank für eure Hilfe!

    Gruß, Rednose

  • wenn ich das richtig verstanden habe, dann willst du in der ssh konsole Halli hallo sehen, oder?

    das problem: wenn ein skript aus den cron tabs ausgeführt wird, dann heißt es noch lang nicht, dass der output in deine ssh konsole ausgegeben wird.

    Feb 3 10:26:01 raspberrypi CRON[1681]: (CRON) info (No MTA installed, discarding output)

    steht ja eh schon fast in klartext drin...

    schreib doch im py code deinen output in ein file rein, dann wirds schon klappen

    LG
    baesch

  • Ähm, MTA bedeutet Mail Transport Agent, hat mit einer Ausgabe direkt nichts zu tun.

    Das bedeutet, cron will dir ein Mail schicken, kann es aber nicht, weil kein Programm installiert ist, das diese Funktion ermöglicht. Ein Mail schickt cron hauptsächlich dann, wenn ein Fehler aufgetreten ist, und in diesem Mail steht dann der Fehler drinnen.

    Anfragen ausserhalb des Forums (Mail o.ä.) werden ignoriert!

  • Cron hat keine Konsole. Wie auch, die dort aufgerufenen Programme sollen ja grade (auch) dann laufen, wenn kein Benutzer angemeldet ist.

    Die Meldung bedeutet, dass der Cron-Daemon die Aufgabe, die er nicht über die Konsole (s.o.) aufgeben konnte, per Mail versenden wollte. Doch da es keinen Mail-Daemon auf dem System gibt, gibt es die Fehlermeldung.

    Die Fehlermeldung bekommst du weg, in dem zu an die Cron-Aufrufzeile Die Ausgaben in Dateien umleitest.

    Code
    * * * * *  python /home/pi/pythonapp/test.py >> /home/pi/cron_ok.txt  >>2 /home/pi/cron_fehler.txt

    Hier bekommst du auf jeden Fall zwei Dateien. Wird vom Programm normalerweise nichts ausgegeben, sind beide immer leer und haben das Datum vom letzten Cron-Aufruf.
    Sonst landet in der "ok"-Datei die normale Ausgabe, und in der "fehler"-Datei Fehlermeldungen. Du kannst auch beide in eine Datei schreiben.
    Automatisch zusammengefügt:

    Zitat

    | wall


    Pfui ;)

    Computer ..... grrrrrr

    Einmal editiert, zuletzt von Rasp-Berlin (3. Februar 2017 um 13:16)

  • Code
    MAILTO=''

    Wenn einen Fehler und andere Ausgaben eines cron-Jobs nicht interessieren, einfach obiges in der crontab setzen und schon ist Ruhe (man 5 crontab).

    Wenn du nichts zu sagen hast, sag einfach nichts.

  • Natürlich war ihm das nicht klar :fies: Sonst hätte er kaum diesen Thread mit dem Problem erstellt

    Rasp-Berlin hat aber doch nur "Pfui ;-)" geschrieben - was regste dich darüber so auf?

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!