Das Anfängerhandbuch zur Verwendung von Cron zum Planen von Aufgaben unter Linux

Ghidul pentru începători pentru utilizarea Cron pentru programarea sarcinilor în Linux
⏱️ 5 min read

Cron ist ein robuster Scheduler, mit dem Sie Skripte oder Befehle planen und regelmäßig ausführen können. Es ist der Herzschlag, der verschiedene Programme und benutzerdefinierte Skripte am Laufen hält. Sie planen die Ausführung von Skripten in der Crontab-Datei. Obwohl diese Datei auf den ersten Blick einschüchternd sein kann, ist sie mit ein wenig Übung recht einfach zu erfassen.

In einigen Linux-Distributionen wie Arch Linux wird cron nicht standardmäßig installiert, da systemd als Cron-Ersatz verwendet wird. Es gibt auch verschiedene Cron-Implementierungen, und jede hat ihre eigene Art, Cron-Jobs zu bearbeiten / zu planen. In diesem Tutorial konzentrieren wir uns auf cronie, die in den meisten Linux-Distributionen wie Ubuntu die Standardeinstellung ist.

[FIX] "Kein Internet, Gesichert...
[FIX] "Kein Internet, Gesichert" Windows 10/11| Routech

Anzeigen von Cron-Einträgen

Durch Anzeigen Ihrer Crontab können Sie geplante Aufgaben anzeigen, die unter Ihrem Konto ausgeführt werden.

Sie können die geplanten Aufgaben für das Root-Konto auch mithilfe von anzeigen sudo.

Cron-Einträge bearbeiten

Wenn Sie noch nie einen Cron-Job eingerichtet haben, wird beim Anzeigen dieser Datei eine leere Datei oder eine Datei mit Kommentaren angezeigt. Um einen Eintrag hinzuzufügen, müssen Sie Ihre Crontab-Datei mit dem öffnen -e Möglichkeit.

Crontab-Einträge folgen immer der gleichen Syntax, sodass Sie Einträge auf jedem Computer überprüfen und programmgesteuert erstellen können.

Die grundlegende Syntax für einen Crontab-Eintragsausdruck lautet:

  • m = Minute zwischen 0 und 59
  • h = Stunde zwischen 0 und 23
  • d = Tag des Monats zwischen 1 und 31
  • Mo = Monat zwischen 1 und 12
  • dow = Wochentag zwischen 0 und 6. Null ist Sonntag.
  • Befehl = der auszuführende Befehl.

Beispielsweise müssen Sie regelmäßig einen Befehl ausführen, um zu überprüfen, ob Ihr MySQL-Server ordnungsgemäß ausgeführt wird. Verwenden Sie die folgende Syntax, damit der Befehl stündlich ausgeführt wird:

Dies bedeutet, dass es zu jeder Stunde pünktlich ausgeführt wird. Wenn Sie nur möchten, dass es jeden Tag um 1.42 Uhr ausgeführt wird, lautet der Befehl:

Darüber hinaus können Kommas für mehrere Elemente (z. B. 1,3,5) und Bindestriche für Bereiche verwendet werden. Die spezielle Verwendung des Sternchens anstelle eines Elements im Ausdruck gibt an, dass das Element für alle Werte des Felds ausgeführt werden soll. (Ein Sternchen im Stundenfeld würde bedeuten, dass für jede Stunde von 0 bis 23 ausgeführt wird.) Ein Hashtag (#) in einer Zeile zeigt einen Kommentar an (was bedeutet, dass die Codezeile nicht ausgeführt wird).

Schließlich zeigt ein Schrägstrich einen Schrittwert an. Beispielsweise wird alle fünf Minuten * / 5 eingegeben (ab dem Zeitpunkt, an dem die Crontab gespeichert und der Cron-Job erstellt wird). Wenn Sie nur die „5“ verwenden würden, würde der Eintrag nur nach fünf Minuten ausgeführt.

Für dieses Beispiel:

  • 34: Die Minute zwischen 0 und 59
  • 3: die Stunde zwischen 0 und 23
  • * *: Die beiden mittleren Sternchen zeigen jeden Tag (1 bis 31) und jeden Monat (1 bis 12) an.
  • 0: Die letzte Null zeigt den Sonntag an

Diese Aufgabe wurde jeden Monat um 3:34 Uhr ausgeführt, jede Woche am Sonntag.

Funktionscodes

Mit Crontab können Sie einige Funktionscodes verwenden, um das Lesen Ihrer Cron-Einträge zu erleichtern.

  • @reboot – Einmal beim Start ausführen
  • @yearly – Führen Sie einmal im Jahr “0 0 1 1 *” aus. >
  • @annually – wie @Jahr
  • @monthly – Führen Sie einmal im Monat “0 0 1 * *” aus.
  • @weekly – Führen Sie einmal pro Woche “0 0 * * 0” aus.
  • @daily – Führen Sie einmal am Tag “0 0 * * *” aus.
  • @midnight – wie @daily
  • @hourly – Führen Sie einmal pro Stunde “0 * * * *” aus.

Zum Beispiel:

Cron-Einträge als anderer Benutzer bearbeiten

Es gibt Zeiten, in denen Sie eine Crontab als Root hinzufügen müssen. Um beispielsweise das Let’s Encrypt SSL-Zertifikat automatisch zu erneuern, müssen Sie das Erneuerungsskript als root ausführen. Um crontab als root zu bearbeiten, fügen Sie einfach a hinzu sudo vor dem Befehl:

Ebenso können Sie einen Cron-Job als einen anderen Benutzer planen, indem Sie die -u Flagge:

Verwenden Sie beispielsweise den folgenden Befehl, um einen Cron-Job als Benutzer “www-data” auszuführen:

Überprüfung der Cron-Aktivität

Obwohl Sie jetzt so eingestellt sind, dass bestimmte Befehle oder Skripte ausgeführt werden, möchten Sie möglicherweise sicherstellen, dass sie ausgeführt werden. In cron ist integriert, dass ein Befehl, sobald er ausgeführt wird, eine E-Mail an den cron-Besitzer sendet. Dies kann mit der Variablen „MAILTO“ geändert werden.

cron-mailto-variable

Hinzufügen [email protected] sendet alle Cron-Jobberichte an eine bestimmte E-Mail. Diese Variable befindet sich normalerweise ganz oben im Crontab-Bearbeitungsbildschirm. Wenn es jedoch nicht vorhanden ist, können Sie die Variable hinzufügen, und es funktioniert wie erwartet.

Mehrere E-Mail-Adressen können durch ein Komma getrennt werden. Wenn Sie einen anderen Befehl benötigen, der an eine andere Stelle per E-Mail gesendet wird, können Sie den Befehl MAILTO direkt über dem Befehl hinzufügen. Befehle nach diesem Mailto werden per E-Mail an die neue Adresse gesendet. Wenn du gehst MAILTO= leer, werden die Benachrichtigungen an den Eigentümer des Cron-Eintrags gesendet.

Alternativ können Sie den Umleitungsoperator (>) verwenden, um die Ausgabe dorthin zu senden, wo sie benötigt wird.

Das oben Gesagte leitet die Ausgabe nach “/ dev / null” um, wodurch keine E-Mail gesendet und die Ausgabe verworfen wird.

Wenn Sie sicherstellen möchten, dass ein Job ausgeführt wird und keine E-Mail gesendet werden soll, können Sie auch die Cron-Protokolle überprüfen. Auf den meisten Systemen sind für den Zugriff auf die Cron-Protokolle Superuser-Berechtigungen erforderlich. Das Cron-Protokoll finden Sie unter “/ var / log”. In der Cron- oder Syslog-Datei wird das Protokoll der ausgeführten Cron-Einträge angezeigt.

cron-tab-log

Cron kann weiter eingeschränkt werden, um eine bestimmte Verwendung zu ermöglichen, und Standardeinstellungen können eingerichtet werden. Durch Hinzufügen von Rohrleitungen und Umleitungen können Cron-Einträge für alle möglichen Aufgaben eingerichtet werden. Letztendlich ist cron ein Tool, mit dem Sie Aufgaben nach Belieben ausführen und die routinemäßige Wartung von Teilen Ihres Systems nach Ihren Wünschen sicherstellen können.

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Avatar of Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Das könnte dich auch interessieren …

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x