Was ist ein Cronjob?

Ein Cron-Job ist eine geplante Aufgabe oder ein Skript, das automatisch in bestimmten Intervallen ausgeführt wird.Was kann ein Cronjob?Ein Cron-Job kann regelmäßig Befehle, Skripte oder Programme ausführen.Dies kann hilfreich sein für Aufgaben wie den reibungslosen Betrieb Ihres Computers oder die Durchführung von Verwaltungsaufgaben.Wie richte ich einen Cronjob ein?Es gibt mehrere Möglichkeiten, einen Cronjob unter Linux einzurichten.Sie können das Cronjob Manager-Tool verwenden, die Konfigurationsdatei Ihrer Shell bearbeiten oder die Befehlszeile verwenden.Welche Methode soll ich verwenden?Das Cronjob Manager-Tool ist am einfachsten zu verwenden und bietet mehr Flexibilität als das Bearbeiten der Konfigurationsdatei Ihrer Shell.So richten Sie einen neuen Cronjob mit dem Cronjob-Manager ein: 1) Öffnen Sie den Cronjob-Manager, indem Sie auf das Symbol „Cronjobs“ in der Taskleiste klicken (oder indem Sie „crontab -e“ eingeben). 2) Klicken Sie im Cronjob-Manager auf die Schaltfläche „Neu“, um einen neuen CronJob zu erstellen. 3) Geben Sie im Dialogfeld Neuer CronJob einen Namen für Ihren neuen CronJob ein und klicken Sie auf OK. 4) Im neu erstellten CronJob-Fenster sehen Sie zwei Registerkarten: Allgemein und Befehle. 5) Auf der Registerkarte Allgemein sehen Sie Informationen zu Ihrem aktuellen Status (läuft oder läuft nicht) sowie Optionen zum Festlegen von Zeitlimits und zum manuellen Stoppen/Starten Ihrer Jobs. 6) Auf der Registerkarte Befehle sehen Sie alle Befehle, die derzeit für die Ausführung in diesem bestimmten CronJob geplant sind. 7) Um dieser Liste einen weiteren Befehl hinzuzufügen, klicken Sie einfach darauf und geben Sie die erforderlichen Parameter in die entsprechenden Felder des sich öffnenden Befehlsfensters ein (siehe unten). 8) Um vorhandene Befehle aus dieser Liste zu löschen, wählen Sie sie einfach aus und drücken Sie die Entf-Taste (oder wählen Sie Abbrechen, wenn Sie Ihre Änderungen speichern, aber keine neuen Befehle hinzufügen möchten). 9) Klicken Sie auf OK, um beide Fenster zu schließen und zum Hauptbildschirm von Crontab zurückzukehren, wo Ihr neu erstellter Job jetzt unter "Aktive Jobs" aufgelistet sein sollte. 10) Um diesen bestimmten Job sofort zu starten/stoppen/neu zu starten, ohne auf das Ablaufen des geplanten Zeitraums zu warten: 1) Wählen Sie ihn aus der Liste der aktiven Jobs aus und drücken Sie die Schaltfläche Start/Stop (oder klicken Sie mit der rechten Maustaste darauf und wählen Sie Start/Stop aus dem Kontext Speisekarte). 2) Wenn Sie möchten, dass dieser bestimmte Job weiter ausgeführt wird, auch wenn er nicht mehr aktiv ist (z. B. wenn das System nachts ausfällt): 1a ) Wählen Sie ihn aus der Liste der aktiven Jobs aus und klicken Sie auf die Schaltfläche Regel hinzufügen ... -> Dropdown-Liste Zeitplantyp ändern -Down-Menü -> Aktivieren Sie die Option „Jeden Tag ausführen“ -> Drücken Sie die Schaltfläche „Übernehmen“ -> Schließen Sie das Regelfenster -> Speichern Sie die Änderungen, indem Sie die Schaltfläche „OK“ drücken. b) Klicken Sie erneut mit der rechten Maustaste auf den ausgewählten Eintrag in der Liste der aktiven Jobs -> Regel hinzufügen... Dropdown-Menü „Zeitplantyp ändern“ -> Option „Nachts ausführen“ aktivieren d ) Klicken Sie auf die Schaltfläche „Anwenden“ e ) Schließen Sie das Regelfenster f ) Speichern Sie die Änderungen, indem Sie auf die Schaltfläche „OK“ klicken Wie stoppe ich meine derzeit ausgeführten Cron-Jobs?So stoppen Sie alle derzeit ausgeführten Cron-Jobs: 1a. Wählen Sie Alle Elemente im Abschnitt „Ausgeführte Crons“ des Crontab-Hauptbildschirms -> Rechtsklick -> Stopp

1b .Wählen Sie den aktuellen Job aus dem Abschnitt Running Crons des Crontab-Hauptbildschirms -> Rechtsklick -> Alle zugehörigen Prozesse stoppen

Wie starte ich meine aktuell angehaltenen Cron-Jobs neu?So starten Sie alle derzeit angehaltenen Cron-Jobs neu: 1a .Wählen Sie Alle Elemente im Abschnitt Angehaltene Crons des Hauptbildschirms der Crontab->Rechtsklick->Ausgewählte Prozesse neu starten

1b .Wählen Sie den aktuellen Job aus dem Abschnitt "Gestoppte Crons" des Crontab-Hauptbildschirms -> Rechtsklick -> Ausgewählte Prozesse neu starten Wie ändere ich meinen aktuell geplanten Zeitraum für meine aktuell ausgeführten Cron-Jobs?So ändern Sie Ihren aktuell geplanten Zeitraum für einen oder mehrere derzeit ausgeführte Cron-Jobs:1a .

Wozu dient ein Cronjob?

Ein Cron-Job ist eine geplante Aufgabe oder ein Skript, das automatisch in bestimmten Intervallen ausgeführt wird.Cron-Jobs können verwendet werden, um Routineaufgaben zu automatisieren, z. B. das Aktualisieren einer Online-Datenbank, das Ausführen eines Programms nach einem Zeitplan oder das Senden von E-Mail-Benachrichtigungen.Cron-Jobs können auch verwendet werden, um spezielle Aktionen auszuführen, wenn bestimmte Ereignisse eintreten, z. B. das Starten einer Website, wenn sich jemand bei seinem Konto anmeldet.

Wie richtet man einen Cronjob unter Linux ein?

Es gibt verschiedene Möglichkeiten, einen Cron-Job unter Linux einzurichten.Sie können den crontab-Befehl verwenden, um Ihre Jobs zu verwalten, oder Sie können den Cron Job Manager verwenden.Sie können Ihre Jobs auch mit dem Linux-Scheduler-Tool planen.Schließlich können Sie das Befehlszeilentool verwenden, um Ihre Jobs auszuführen.

Um Ihre Jobs mit dem Befehl crontab zu verwalten, öffnen Sie zunächst ein Terminalfenster und geben Sie Folgendes ein:

crontab -e

Dadurch wird die Crontab-Datei in Ihrem aktuellen Verzeichnis geöffnet.Die erste Zeile dieser Datei heißt „default“ und legt einige grundlegende Optionen für die Verwendung des crontab-Befehls fest.Um einen neuen Job hinzuzufügen, geben Sie Folgendes ein:

crontab -e >> meinneuerjob.cron

Dadurch wird ein neuer Eintrag in der Datei mynewjob.cron erstellt, den Sie nach Bedarf bearbeiten können.Um einen Job auszuführen, geben Sie einfach Folgendes ein:

crontab mynewjob.cron

Sie können auch angeben, an welchem ​​Wochentag Ihr Job ausgeführt werden soll, indem Sie hinter "0" eine optionale Zahl eingeben (z. B. "0 0 * *"). Sie können auch angeben, zu welcher Tageszeit Ihr Job ausgeführt werden soll, indem Sie hinter "*" eine optionale Zahl eingeben (z. B. "15 10 * *").

Wenn Sie einen Job aus Ihrer Liste geplanter Aufgaben entfernen möchten, geben Sie einfach Folgendes ein:

crontab -r meinneuerjob.cron

Sie können auch einzelne Einträge aus Ihrer Liste geplanter Aufgaben löschen, indem Sie Folgendes eingeben: Strg-D (oder CMD-D auf Macs) gefolgt vom Namen des Eintrags, den Sie löschen möchten.Wenn Sie nur eine bestimmte Aufgabe aus Ihrer Liste entfernen möchten, aber nicht alle zugehörigen Einträge löschen möchten, können Sie Folgendes eingeben: Strg-X gefolgt vom Namen des Eintrags, den Sie löschen möchten, ohne auch die zugehörigen Einträge zu löschen .

Wenn Sie schließlich nur Informationen zu einer bestimmten Aufgabe anzeigen möchten, die derzeit geplant ist, aber noch nicht ausgeführt wird, geben Sie Folgendes ein: Strg-P ​​gefolgt vom Namen der Aufgabe, zu der Sie Informationen wünschen.

Wie oft wird ein Cronjob ausgeführt?

Ein Cronjob ist eine geplante Aufgabe, die automatisch in bestimmten Intervallen ausgeführt wird.Sie können einen Cronjob so einrichten, dass er einmal täglich, einmal wöchentlich oder einmal monatlich ausgeführt wird.Sie können einen Cron-Job auch so einrichten, dass er nur ausgeführt wird, wenn bestimmte Bedingungen erfüllt sind.Beispielsweise möchten Sie möglicherweise, dass Ihr Cron-Job nur ausgeführt wird, wenn der Computer mit Wechselstrom versorgt wird.

Kann ein Cron-Job so eingestellt werden, dass er mehr als einmal pro Stunde ausgeführt wird?

Ja, ein Cron-Job kann so eingestellt werden, dass er mehr als einmal pro Stunde ausgeführt wird.Fügen Sie dazu Ihrer Crontab-Datei die folgende Zeile hinzu:

*/1 * * * * /usr/bin/php -f /var/www/html/cronjob.php

Dadurch wird das PHP-Skript unter /var/www/html/cronjob.php stündlich ausgeführt.

Was passiert, wenn Sie kein Intervall für Ihren Cronjob angeben?

Wenn Sie kein Intervall für Ihren Cronjob angeben, wird er jede Minute ausgeführt.Wenn Sie möchten, dass er häufiger ausgeführt wird, können Sie einen Zeitausdruck wie „*/5“ hinzufügen, der den Job alle fünf Minuten ausführen würde.Wenn Sie möchten, dass er seltener ausgeführt wird, können Sie eine Zahl wie "0 */5" hinzufügen, wodurch der Job alle fünf Minuten ausgeführt wird.

Beeinflusst die Systemzeit, wann mein Cronjob ausgeführt wird?

Auf diese Frage gibt es keine eindeutige Antwort.Abhängig von der Konfiguration Ihres Systems kann die Tageszeit beeinflussen, wann Ihr Cronjob ausgeführt wird.Wenn Ihre Systemuhr beispielsweise auf UTC eingestellt ist, wird Ihr Cron-Job in der Zeitzone ausgeführt, in der sich Ihr Computer befindet.Wenn Ihre Systemuhr auf die lokale Zeit eingestellt ist, wird Ihr Cron-Job gemäß der lokalen Zeitzone ausgeführt.

Um festzustellen, ob sich die Systemzeit auf die Ausführung eines Cron-Jobs auswirkt oder nicht, müssen Sie sich die Konfiguration Ihres Computers ansehen.Einige gebräuchliche Möglichkeiten, dies zu tun, sind die Verwendung des Befehls date oder das Anzeigen des Inhalts von /etc/rc.local . Auf beide Methoden kann über ein Terminalfenster zugegriffen werden, indem Sie sudo eingeben.

Wenn Sie eine Aufgabe planen möchten, die unabhängig von der aktuellen Systemzeit immer ausgeführt werden soll, können Sie anacron verwenden. anacron ist ein Programm, das auf Änderungen in Dateien überwacht und bestimmte Konfigurationen basierend auf diesen Änderungen automatisch aktualisiert.Weitere Informationen zu anacron finden Sie unter

.

Ich möchte, dass mein Skript jede Minute ausgeführt wird. Was ist das richtige Intervall?

Auf diese Frage gibt es keine allgemeingültige Antwort, da das Intervall, in dem ein Cron-Job ausgeführt werden sollte, von den spezifischen Anforderungen des Skripts abhängt.Einige Tipps zum Festlegen eines geeigneten Intervalls für einen Cron-Job finden Sie jedoch unten.

In erster Linie ist es wichtig zu verstehen, welchem ​​Zweck das Skript dient und welche Art von Zeitplan es einhalten muss.Wenn das Skript regelmäßig ausgeführt werden muss, aber relativ geringe Auswirkungen hat (z. B. alle fünf Minuten auf neue E-Mails prüfen), kann ein Minutenintervall ausreichend sein.Wenn das Skript andererseits mehr Zeit benötigt, um seine Aufgabe abzuschließen (z. B. das Verarbeiten großer Datenmengen), kann ein längeres Intervall (z. B. stündlich) angemessener sein.

Ein weiterer Faktor, der beim Festlegen eines Intervalls für einen Cronjob berücksichtigt werden sollte, ist die Last, die das System bewältigen kann.Wenn zu viele Jobs gleichzeitig ausgeführt werden, kann die Leistung aufgrund des erhöhten Verarbeitungsaufwands leiden.Daher ist es wichtig, verschiedene Intervalle zu testen, um eines zu finden, das für das jeweilige Skript am besten funktioniert, ohne zu viele Interferenzen oder verzögertes Verhalten zu verursachen.

Denken Sie schließlich daran, dass nicht alle Systeme genau gleich konfiguriert sind; Daher funktionieren bestimmte Parameter (z. B. ein Intervall) möglicherweise nicht richtig auf einem Computer im Vergleich zu einem anderen.In diesen Fällen kann es notwendig sein, verschiedene Intervalle auszuprobieren, bis etwas gefunden wird, das zuverlässig funktioniert.

Mein Skript läuft nicht, was könnte falsch sein?

Es könnte ein paar Dinge falsch sein.Stellen Sie zunächst sicher, dass das Skript ausführbar ist.Dazu können Sie den Befehl chmod verwenden, um die Berechtigungen der Datei so zu ändern, dass sie vom Benutzerkonto Ihres Computers (normalerweise 755 für Dateien in Linux) gelesen und vom Gruppenkonto Ihres Computers (normalerweise 666 für Dateien in Linux) geschrieben werden kann. . Wenn Sie keinen Zugriff auf den Befehl chmod haben, können Sie versuchen, sich mit sudo die Berechtigung zum Ändern der Datei zu erteilen.

Wenn Sie immer noch Probleme haben, Ihr Skript auszuführen, könnte etwas mit seiner Konfiguration nicht stimmen.Sie können dies überprüfen, indem Sie das Skript als root ausführen – dadurch können Sie seine Konfigurationsdatei anzeigen und bearbeiten.Das häufigste Problem beim Einrichten von Skripten sind falsche oder fehlende Pfadinformationen; Wenn dies der Fall ist, können Sie es beheben, indem Sie der Konfigurationsdatei Ihres Skripts entsprechende Pfade hinzufügen.

Stellen Sie schließlich sicher, dass auf Ihrem Computer die gesamte erforderliche Software installiert ist. Ohne diese Programme funktioniert Ihr Skript möglicherweise nicht richtig.Damit beispielsweise Cron-Jobs auf Linux-Systemen ausgeführt werden können, muss Cron korrekt installiert und konfiguriert sein. ohne dass Cron falsch installiert oder konfiguriert ist, werden Ihre Skripte überhaupt nicht ausgeführt.

Linux-Benutzer haben oft Probleme beim Versuch, ihre Cron-Jobs einzurichten, da sie nicht über ausreichende Kenntnisse über Linux-Befehle verfügen, die für Job-Management-Zwecke wie chmod usw. verwendet werden. Deshalb haben wir diese Anleitung geschrieben, wie man einen Cron-Job unter Linux einfach und schnell einrichtet Hilfe einiger grundlegender Befehle wie chmod usw. Ich hoffe, diese Anleitung hilft Ihnen weiter!

Um mit der Einrichtung eines Cronjobs auf einem Linux-System zu beginnen: 1) Öffnen Sie das Terminalfenster. 2) Geben Sie den folgenden Befehl ein. 3) Geben Sie „chmod +x myscript“ ein. 4) Speichern Sie myscript als myscript.sh. 5) Führen Sie myscript.sh aus Tag um Mitternacht7) Um einen laufenden Job zu stoppen: Geben Sie "cronjob -f" ein.8 ) Um derzeit aktive Cronjobs aufzulisten: Geben Sie "cronjob -l" ein.9 ) Um den aktuellen aktiven Cronjob zu löschen: Geben Sie "cronjob -d" ein Die Verwendung der oben genannten Befehle ist sehr wichtig, wenn Sie jede Art von Shell-Scripting-Aufgabe auf einem Linux-System einrichten, also lesen Sie bitte das unten erwähnte Tutorial sorgfältig durch, bevor Sie eine Aufgabe im Zusammenhang mit Shell-Scripting auf einem Linux-System starten: - Öffnen Sie zuerst das Terminalfenster - Geben Sie den folgenden Befehl ein - EnterNow save ourcript asMyScriptnameFor eg:-Save MyScriptname as test_scriptSobald erfolgreich gespeichert, schließen Sie das TerminalfensterJetzt öffnen Sie ein neues Terminalfenster-Geben Sie den folgenden Befehl ein-EnterSie sollten eine Ausgabe sehen, die der folgenden ähnelt When executed successfullyabovementionedcommandwill create an executablefile namedtest_scriptinsidecurrentdirectorywhereyourunningitfromnowyoucanstartusingitbyjustexecutingitwithoutany further argumentsLikebelow:(Abovecommandwillruntest_scriptonceinitsinitializationphaseandstopitsrunningimmediatelyaftercompletionofitstask.)Similarlyyoucanexecutemanydifferenttypesofcommandswithsimpleargumentslikestop(),start(),status()etc.(Pleaserememberthattheoutputofthestartingcommandswillbedisplayedinterminalwindowwhiletheoutputofthestoppingcommandswillbedisplayedinnewterminalwindow.

Ich erhalte einen Fehler von meinem Skript, wie kann ich den Grund dafür herausfinden?

Es gibt mehrere Möglichkeiten, um herauszufinden, warum Ihr Skript einen Fehler erhält.Eine Möglichkeit besteht darin, den Befehl "grep" zu verwenden, um nach bestimmten Zeilen in Ihrem Skript zu suchen, die das Problem verursachen.Eine andere Möglichkeit besteht darin, den Befehl "log" zu verwenden, um zu sehen, was passiert, wenn Ihr Skript ausgeführt wird.Schließlich können Sie auch den Befehl "tail -f" verwenden, um die Ausgabe Ihres Skripts während der Ausführung zu beobachten, damit Sie sehen können, ob Fehler oder unerwartetes Verhalten auftreten.

Kann ich mehr als einen Befehl in meinem Cron-Job haben?12Wie lösche ich einen Cronjob?13Kann mir die Ausgabe meiner Befehle per E-Mail zugesendet werden?

14Wie stelle ich sicher, dass mein Cron-Job zu einer bestimmten Zeit ausgeführt wird?15Was sind einige gute Cron-Job-Beispiele?16

Ein Cron-Job ist ein Programm, das zu bestimmten Zeiten automatisch ausgeführt wird, normalerweise basierend auf einem von Ihnen festgelegten Zeitplan.Sie können damit Aufgaben wie das Abrufen Ihrer E-Mails, das Herunterladen von Dateien oder das Ausführen von Programmen ausführen.

Um einen Cron-Job zu erstellen, öffnen Sie zunächst die Befehlszeilenschnittstelle (CLI) auf Ihrem Computer.Geben Sie dann den folgenden Befehl ein: sudo crontab -e Dies öffnet die CRONTAB-Datei in Ihrem Texteditor Ihrer Wahl.Oben in dieser Datei sehen Sie Zeilen, die wie folgt aussehen: # Diese Datei enthält einen oder mehrere Jobs.Jede Zeile gibt eine Aktion an, die von der Shell ausgeführt werden soll, wenn sie asynchron ausgeführt wird # Das Format ist: Die erste Zeile in dieser Datei wird "Auftragsname" genannt.Damit identifizieren Sie Ihren Job, wenn Sie ihn über die Befehlszeile ausführen.Als nächstes kommen die "Befehle", die einfach nur alte Befehle sind, die Sie als Teil Ihrer Arbeit ausführen möchten.Hier ist zum Beispiel eines, das alle seine Argumente ausgibt: echo $* Schließlich gibt es zwei Zeilen, die CRON mitteilen, um welche Art von Aufgabe es sich bei Ihrem Befehl handelt – in diesem Fall handelt es sich um eine Shell-Skriptdatei (.sh).Wenn alles in Ordnung aussieht, speichern und schließen Sie die CRONTAB-Datei mit Strg+X, dann Y, dann Enter . Jetzt sind Sie bereit, Ihren neuen Job zu nutzen!Um es zu starten, geben Sie einfach sudo ./Ihr_neuer_Job_Name ein, wobei Ihr_neuer_Job_Name der Name Ihrer CRONTAB-Datei ist, als Sie sie erstellt haben.Wenn alles gut geht, sollte Ihr neuer Job sofort losgehen!

Ja!Solange jeder Befehl ohne Fehler erfolgreich beendet wird (d. h. keinen Schaden verursacht), können Sie so viele Befehle in Ihren Cron-Job einfügen, wie Sie möchten!Stellen Sie nur sicher, dass sie alle erfolgreich beendet werden, bevor Sie CRONTAB verlassen.

Um einen aktuell ausgeführten Cron-Job zu löschen, geben Sie einfach sudo rm -f YOURJOBNAME ein, wobei YOURJOBNAME der Name des betreffenden Cron-Jobs ist. Seien Sie jedoch vorsichtig – wenn IHRJOBNAME mit ausstehenden Aufgaben verknüpft ist, werden sie zusammen mit ihm gelöscht!Stellen Sie sicher, dass alles andere, das mit YOURJOBNAME verknüpft ist, ordnungsgemäß bereinigt wird, bevor Sie es löschen :)

Ja!Um die Ausgabe bestimmter Befehle innerhalb eines Cron-Jobs als E-Mail-Nachrichten zu senden, anstatt sie nur auf dem Bildschirm auszudrucken*, fügen Sie einfach ein zusätzliches Flag ein, wenn Sie diese Befehle ausführen: echo -n >&2 Wobei &2 das Pipe-Zeichen ( | ) darstellt. Wenn wir also beispielsweise wollten, dass unsere E-Mail-Nachrichtenausgabe an /var/mail/username statt nur an stdout geht, würden wir so etwas verwenden: echo -n 'Ihre Aufgabe wurde erfolgreich ausgeführt!' >> /var/mail/benutzername Hinweis * Die E-Mail-Ausgabe funktioniert möglicherweise nicht richtig, wenn Software von Drittanbietern auf Ihrem Computer installiert wurde, die die Funktionsweise der Standardeingabe und -ausgabe verändert (z. B. Bildschirm). Versuchen Sie in solchen Fällen, die Ausgabe bestimmter Befehle in einem CronJob auszudrucken, anstatt sie per E-Mail zu versenden.

  1. Was ist ein Cronjob und wie funktioniert er?
  2. Wie erstelle ich einen Cronjob?
  3. Kann ich mehr als einen Befehl in meinem Cron-Job haben?
  4. Wie lösche ich einen Cronjob?
  5. Kann mir die Ausgabe meiner Befehle per E-Mail zugesendet werden?