Hallo,
zuerst mal das System:
Debian 8.7
Liveconfig 2.3.0-r4510
DB SQLite 3.16.2
Ich hatte für einen Kunden, der Cronjobs selbst anlegen darf, also in der LiveConfig-Oberfläche des Kunden (nicht als admin) einen Cronjob angelegt, der alle 15 Min. ausgeführt werden sollte.
Es handelt sich um den Aufruf eines einfachen PHP-Skripts, das zum Test nur ein Mail an mich schickt.
Aus mir unerfindlichen Gründen wurde aber das Skript immer wieder doppelt ausgeführt (nicht rekonstruierbar, manchmal gab es zur halben Stunde zwei Mails, manchmal zur vollen Stunde, manchmal klappte es).
Der Cronjob wurde über den Backend-Assistenten angelegt:
0,15,30,45 *** /usr/lib/php /htdocs/phpcron.php
Ausserdem habe ich noch versucht, die Doppelausführung mittels der flock Methode abzufangen (das hilft nach meinem Verständnis aber nur, wenn der Job noch läuft, während der 2. Aufruf erfolgt).
Um dem Problem Herr zu werden, habe ich dann den Cronjob in Liveconfig wieder gelöscht und diesen als root direkt in cron.d eingetragen.
Die Ausführung als root läuft jetzt korrekt - hier wird der Job immer nur einmal aufgerufen.
ABER:
Aus unerfindlichen Gründen wird trotz meiner Löschung (LiveConfig restart habe ich ebenfalls bereits durchgeführt) immer noch einmal stündlich der Cronjob aus Liveconfig ausgeführt (ich erkenne das, weil dieser als Benutzer webxxx ausgeführt wird, während der andere als root läuft).
Meine Frage:
Anscheinend hat die Löschung des Cronjob über die LiveConfig-Oberfläche nicht richtig geklappt - wo kann ich nachschauen, ob da noch etwas rumliegt, was gelöscht werden muss - die /etc/cron* habe ich durch, da ist nichts drin?
Muss ich noch einen Eintrag in der SQLite-DB manuell löschen - wie mache ich das unter Debian?
Vielen Dank für jeden Tip
Hermann