NEWS
Crontabs unter (Debian) Bookworm funkionieren oft nicht
-
Hallo,
habe meinen Pi kürzlich mit der Anleitung hier aus dem Forum auf Bokkworm gebracht.
Seit dem werden Crontabs (crontab -e) oft nicht ausgeführt.
Hier der Log aus var/log/cron.log:2023-07-18T17:05:01.849969+02:00 Smartazamba CRON[1177871]: (pi) CMD (curl http://localhost:8087/set/0_userdata.0.Eigene_Datenpunkte.CRONTEST?value=$(date +) 2023-07-18T17:05:01.853392+02:00 Smartazamba CRON[1177870]: (CRON) info (No MTA installed, discarding output)
Die Aufgabe wurde wieder nicht ausgeführt. Was bedeutet die zweite Zeile?
Über Putty direkt funktioniert der Befehl.
Das sudo habe ich nur zum Probieren hinzugefügt, funktioniert weder mit noch ohne. -
@rushmed sagte in Crontabs unter (Debian) Bookrorm:
Was bedeutet die zweite Zeile?
Das bedeutet, das kein Programm installiert ist, mit dem E-Mails des crond übermittelt werden können. Ist kein fataler Fehler.
-
@thomas-braun Danke.
Ich versuche garkeine eMails zu versenden.
Haste noch ne Idee oder ähnliches Verhalten bemerkt? -
@rushmed sagte in Crontabs unter (Debian) Bookrorm:
Über Putty direkt funktioniert der Befehl.
Was soll eigentlich immer 'über Putty' bedeuten?
Putty ist ein Terminalprogramm, mit dem auf eine Shell zugegriffen werden kann. Also funktioniert es in der bash? Und wo funktioniert es dann nicht? cronjobs laufen eh immer dort ab. -
@rushmed ab Werk versucht
crontab
mögliche Ausgaben von Cronjobs dem root / dem eingestellten Benutzer per Mail zu senden.
MTA = Mail Transport Agent - und da ist keiner bei dir Installiert, z.B. PostfixAlternativ sorgst du dafür das deine Cronjobzeile keinerlei Ausgaben produziert. Entweder lassen die Befehle das per Parameter zu (viele haben einen Cron-Modus der nur bei Fehlern was melden würde) oder du hängst das folgende an das Ende der Zeile:
> /dev/null 2>&1
leitet die Ausgabe um in das Gerät
/dev/null
- das landet dort im Nirwana.
2>&1
bündelt den Fehlerkanal mit in den Standardkanal und sorgt so dafür das auch Fehlermeldungen dort landen wo die Standausgabe landet, hier also im Nirwana. -
@bananajoe Ok, hab ich angefügt. in der Bash (sorry @Thomas-Braun) funktioniert der Befehl.
Der Cronjob wird nicht ausgeführt.
Habs jetzt zweimal probiert:2023-07-18T23:56:01.151180+02:00 Smartazamba cron[434]: (pi) RELOAD (crontabs/pi) 2023-07-18T23:56:01.161910+02:00 Smartazamba CRON[1492491]: (pi) CMD (curl http://localhost:8087/set/0_userdata.0.Eigene_Datenpunkte.CRONTEST?value=$(date +) 2023-07-18T23:56:01.166106+02:00 Smartazamba CRON[1492490]: (CRON) info (No MTA installed, discarding output) 2023-07-18T23:56:09.395488+02:00 Smartazamba crontab[1492797]: (pi) BEGIN EDIT (pi) 2023-07-18T23:57:08.867375+02:00 Smartazamba crontab[1492797]: (pi) END EDIT (pi) 2023-07-18T23:57:51.066003+02:00 Smartazamba crontab[1493833]: (pi) BEGIN EDIT (pi) 2023-07-18T23:58:32.772669+02:00 Smartazamba crontab[1493833]: (pi) REPLACE (pi) 2023-07-18T23:58:32.773610+02:00 Smartazamba crontab[1493833]: (pi) END EDIT (pi) 2023-07-18T23:59:01.171043+02:00 Smartazamba cron[434]: (pi) RELOAD (crontabs/pi) 2023-07-18T23:59:01.183674+02:00 Smartazamba CRON[1494907]: (pi) CMD (curl http://localhost:8087/set/0_userdata.0.Eigene_Datenpunkte.CRONTEST?value=$(date +) 2023-07-18T23:59:01.190303+02:00 Smartazamba CRON[1494906]: (CRON) info (No MTA installed, discarding output)
Die Meldung kommt dennoch aber die ist mir ja egal. Mir ist ertmal wichtig dass die Jobs laufen.
Der letzte crontab -e Eintrag sieht so aus:
#CRONTEST 59 5,11,17,23 * * * curl http://localhost:8087/set/0_userdata.0.Eigene_Datenpunkte.CRONTEST?value=$(date +%d.%b.%y_%H:%M) > /dev/null 2>&1
-
@rushmed
poste hier mal die ganze Zeile aus dem Crontabsieht richtig aus. was passiert in der Bash wenn du das anhängst? hat curl nicht so einen Fortschrittbalken?
Versuch malcurl --silent unddanndeinebefehle
-
@bananajoe Ist oben nachgereicht.
-
@bananajoe sagte in Crontabs unter (Debian) Bookworm funkionieren oft nicht:
@rushmed
poste hier mal die ganze Zeile aus dem Crontabsieht richtig aus. was passiert in der Bash wenn du das anhängst? hat curl nicht so einen Fortschrittbalken?
Versuch malcurl --silent unddanndeinebefehle
Wird korrekt ausgeführt.
Hier noch zur Info:
pi@Smartazamba:~ $ systemctl status cron.service ● cron.service - Regular background program processing daemon Loaded: loaded (/lib/systemd/system/cron.service; enabled; preset: enabled) Active: active (running) since Mon 2023-07-17 16:39:45 CEST; 1 day 7h ago Docs: man:cron(8) Main PID: 434 (cron) Tasks: 1 (limit: 8754) CPU: 1.260s CGroup: /system.slice/cron.service └─434 /usr/sbin/cron -f Jul 18 23:56:01 Smartazamba cron[434]: (pi) RELOAD (crontabs/pi) Jul 18 23:56:01 Smartazamba CRON[1492490]: pam_unix(cron:session): session opened for user pi(uid=1000) by (uid=0) Jul 18 23:56:01 Smartazamba CRON[1492491]: (pi) CMD (curl http://localhost:8087/set/0_userdata.0.Eigene_Datenpunkte.CRONTEST?value=$(date +) Jul 18 23:56:01 Smartazamba CRON[1492490]: (CRON) info (No MTA installed, discarding output) Jul 18 23:56:01 Smartazamba CRON[1492490]: pam_unix(cron:session): session closed for user pi Jul 18 23:59:01 Smartazamba cron[434]: (pi) RELOAD (crontabs/pi) Jul 18 23:59:01 Smartazamba CRON[1494906]: pam_unix(cron:session): session opened for user pi(uid=1000) by (uid=0) Jul 18 23:59:01 Smartazamba CRON[1494907]: (pi) CMD (curl http://localhost:8087/set/0_userdata.0.Eigene_Datenpunkte.CRONTEST?value=$(date +) Jul 18 23:59:01 Smartazamba CRON[1494906]: (CRON) info (No MTA installed, discarding output) Jul 18 23:59:01 Smartazamba CRON[1494906]: pam_unix(cron:session): session closed for user pi
-
@rushmed sagte in Crontabs unter (Debian) Bookworm funkionieren oft nicht:
systemctl status cron.service
ich glaub die Meldung kommt immer weil im System kein MTA konfiguriert ist. hat nichts mit den aktuellen Eintrag in der Crontab zu tun
Ich habe einen konfiguriert und setze obiges ein um Mails zu unterdrücken (geht auf mehreren Wegen, das ist einer davon) -
@bananajoe Hast du Bookworm drauf und funktionieren deine zeitgesteuerten Jobs?
-
@rushmed sagte in Crontabs unter (Debian) Bookworm funkionieren oft nicht:
@bananajoe Hast du Bookworm drauf und funktionieren deine zeitgesteuerten Jobs?
Nein, ich bin bei Ubuntu Jammy und ja bei mir funktioniert alles.
Im Zweifel sind es zu viele Sonderzeichen. Dann packe das was du ausführen willst in ein Skript und starte dieses über den cronjob -
Ich würde auch keine direkten Kommandos da reinschreiben sondern auf entsprechende Skripte verlinken. Lässt sich besser handhaben.
Edith: @BananaJoe war schneller mit dem Skript...
-
Das ist nur ein Testbefehl. Eigentlich geht es mir um Scrips.
Kann dashier https://forums.debian.net/viewtopic.php?t=153153 etwas mit meinem Problem zu tun haben?pi@Smartazamba:~ systemctl status anacronon Unit anacron.service could not be found.
-
@rushmed
Möglich. Installier es nach. -
@thomas-braun Hat nicht geholfen.
-
Hast du ein Skript angelegt und cronst das?
-
@thomas-braun Ja, zwei. Die Scripte lassen sich auch über die Bash ausführen. Die Bearbeitung dauert aber ca. 20 Minuten. Deswegen veruch' ich das Troubleshooting mit einem einfachen Befehl. Im Cron.log steht ja auch dass die Befehle ausgeführt wurden, allerdings passiert nichts.