Mehrere Cron-jobs in eine crontab-Datei
Wollte ich die Implementierung von zwei cronjobs mit unterschiedlichen Ausführung. Ein cron-job für das versenden von E-Mails und der zweite cron-job für die überprüfung meiner Anwendung Abonnements.
Schreibe ich eine crontab-Datei und schreiben in zwei cronjob wie folgt:
2 * * * * path to mailCronjob mail.php
20 * * * * path to check my application's subscriptions sub.php
Das problem ist in Erster cronjob ist in Ordnung. E-Mail wird erzielt in Ordnung, aber der zweite cronjob
funktioniert nicht. Ich habe versucht zu laufen, zweiten job, manuell, seine arbeiten auch in Ordnung.
Ich bin mit Befehl als cronjob:
crontab crontab_file
wenn ich den Befehl crontab -l
es zeigt auch beide cronjob in die Befehlszeile ein.
Wollte ich Fragen, bin ich hier etwas fehlt, oder was muss ich tun, um diese cronjobs.
0 * * * * php script.php > /tmp/errors.log
Verwenden Sie absolute Pfade in der crontab-Datei?
wenn ich das Skript manuell jetzt,läuft bei mir aus dem browser. Also, keine Benutzer. 🙁
ja, ich bin mit absoluten Pfad für Skripte
Sie benötigen zum ausführen des Skripts auf der Konsole, als wenn es aus ausgeführt crontab-debug-Berechtigungen/pathing-Probleme:
sudo -u <cron user> <exactly what is in the cronjob>
InformationsquelleAutor ashutosh | 2012-11-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
TATSACHE: Sie können so viele cron-jobs aus einem einzigen crontab-Datei wie Sie es wünschen.
TATSACHE: Sie können auch ausführen verschiedenen jobs als verschiedenen Benutzer, jede mit Ihren eigenen crontab-Datei.
VORSCHLAG:
1) Nur debug was ist falsch mit Ihrem zweiten job.
2) könnte Es sein Weg ist, könnte es sein, Berechtigungen; es ist mehr als wahrscheinlich, dass die Umwelt (die Umwelt für "cron" kann anders sein, die Umwelt und für den gleichen Benutzer von einer Befehlszeile aus).
PS:
Versuchen diese auch:
Wie simulieren die Umgebung von cron führt ein script mit?
Debugging crontab jobs
InformationsquelleAutor paulsm4
Überprüfen Sie die besitzenden Benutzers per E-Mail und sehen, ob ein Fehlerbericht gesendet wurde.
Wenn Sie brauchen, um eine bestimmte Benutzer und Benutzer-Umgebung, ändern Sie Ihren Aufruf
Wenn Ihr Skript funktioniert nur aus einem bestimmten Verzeichnis verwenden
InformationsquelleAutor Erik Nedwidek
Ich habe noch nie 2 aktuelle cronjobs in einem cron-tab-Datei, sondern hatte das einen cronjob ausführen alle 15 Minuten und die Datenbank Abfragen, oder schauen Sie in eine config-Datei, welche Aufgaben werden dort ausgeführt, vielleicht ist dieses Konzept hilft Ihnen.
grundsätzlich meine zwei cron-jobs funktioniert sehr differnently, man ist für das versenden von E-mails, und das zweite ist für die Prüfung meiner Bewerbung Abonnements für jeweils 15 min, es ist viel code, und das ist, warum ich nicht wnat zu Chaos mit ihm.;)
Ich habe anderes Sachen mit meiner crontab, aber ich fand heraus, die Ressourcen seien initialisiert (mit vielen Benutzern), wo meist das gleiche, so ich verschmolzen diese zu einem Prozess, so dass, wenn beide Skripte startet der gleichen Zeit hatte ich nur zum initialisieren Sie alle Ressourcen, die einmal gespeichert eine Menge an Ausführungszeit damals 🙂
Ich habe anderes Sachen mit meiner crontab, aber ich fand heraus, die Ressourcen seien initialisiert (mit vielen Benutzern), wo meist das gleiche, so ich verschmolzen diese zu einem Prozess, so dass, wenn beide Skripte startet der gleichen Zeit hatte ich nur zum initialisieren Sie alle Ressourcen, die einmal gespeichert eine Menge an Ausführungszeit damals 🙂
was du hast ist vollkommen OK. Zwei Zeilen in der crontab sollte bedeuten, dass zwei Aufträge, die ausgeführt werden. Zeitraum. Was auch immer schief geht mit dem zweiten job ist "etwas anderes". Sie müssen Debuggen was falsch mit der Aufgabe selbst.
InformationsquelleAutor Vengarioth
Ich erinnere mich an das gleiche problem. Aus irgendeinem Grund musste ich drücken geben Sie nach meinem zweiten cron-job. Schon in der ersten cron-job, wenn es der einzige job, braucht eine CR/LF (geben Sie). Cursor muss auf der zweiten Linie (wenn es einen cron-job)... cursor muss auf der Dritten Zeile, wenn es zwei cron-jobs. Ich denke, Lesen muss die Datei komplett zu interpretieren, die cron-job-Befehl. Ich nur teilen, denn wenn Sie nicht tun, dass nur der erste job ausgeführt wird, und überspringt die zweite völlig, es sei denn die EINGABETASTE gedrückt wird am Ende der zweiten job. Beste Grüße und cheers... Test, und lassen Sie es uns wissen.
InformationsquelleAutor Luis H Cabrejo