Oft möchten wir, dass der Server regelmäßig ein Skript ausführt, um einen Vorgang auszulösen. Wenn wir beispielsweise mit dem Tool von Qinius hochladen und der Synchronisierungsdatei eine neue Datei hinzugefügt wird, können wir ein geplantes Skript bereitstellen, um den benötigten Synchronisierungsbefehl auszuführen (das Tool qrsbox von Qinius führt die Synchronisierung automatisch durch. Sie müssen nur eine Datei zum Synchronisierungsordner hinzufügen, um den Upload automatisch zu überwachen). 1. Installieren Sie crontab [root@CentOS ~]# yum install vixie-cron [root@CentOS ~]# yum installiere crontabs Das Paket vixie-cron ist das Hauptprogramm von cron; Das Crontabs-Paket ist ein Programm, das die zum Ausführen des Cron-Daemons verwendeten Tabellen installiert, deinstalliert oder auflistet. 2. Crontab-Dienst aktivieren service crond start //Starten Sie den Dienst Verwenden Sie die folgende Methode, um diesen Cron-Dienst zu starten und zu stoppen: service crond start //Starten Sie den Dienst service crond stop //Den Dienst beenden service crond restart //Dienst neu starten service crond reload //Konfiguration neu laden Den Crontab-Dienststatus anzeigen: service crond status Den Crontab-Dienst manuell starten: service crond start Überprüfen Sie, ob der Crontab-Dienst so eingestellt ist, dass er beim Booten gestartet wird, indem Sie den Befehl ausführen: ntsysv Zum Autostart hinzufügen: chkconfig –level 35 crond ein Darüber hinaus möchte ich die Befehle ntsysv und chkconfig vorstellen: Der Befehl ntsysv ist ein grafischer Verwaltungsmodus für die Benutzeroberfläche, mit dem der Startvorgang festgelegt werden kann. Er muss installiert werden, bevor er verwendet werden kann. Nachdem yum install -y ntsysv installiert wurde, müssen Sie nur ntsysv ausführen, um eine grafische Verwaltungsoberfläche anzuzeigen. Auf- und Ab-Tasten: können zum Wechseln zwischen den Diensten im mittleren Feld verwendet werden; Leertaste: kann verwendet werden, um den gewünschten Dienst auszuwählen, [*] bedeutet Starten; Tabulatortaste: kann zwischen Feldern, OK und Abbrechen wechseln; Taste [F1]: Sie können die Beschreibung des Dienstes anzeigen. Legen Sie bezüglich des Befehlszeilenformats von chkconfig fest, ob beim Booten automatisch gestartet werden soll, oder fragen Sie den Ausführungsstatus eines Dienstes auf 6 Boot-Ebenen ab. Richten Sie den Crond-Dienst so ein, dass er beim Booten automatisch gestartet wird: [root@CentOS ~]# chkconfig crond on Zeigen Sie den Ausführungsstatus der Crond-Dienste auf jeder Startebene an. [root@CentOS ~]# chkconfig –list crond crond 0: Deaktivieren 1: Deaktivieren 2: Aktivieren 3: Aktivieren 4: Aktivieren 5: Aktivieren 6: Deaktivieren Sie können sehen, dass der Crond-Dienst automatisch auf Ebene 2, 3, 4 und 5 gestartet wird. Brechen Sie den automatischen Start des Crond-Dienstes ab: [root@CentOS ~]# chkconfig crond off 3. Legen Sie das auszuführende Skript fest Es gibt zwei Möglichkeiten, eine neue Planungsaufgabe hinzuzufügen: 1) Geben Sie crontab -e in die Kommandozeile ein, fügen Sie die entsprechenden Tasks hinzu, speichern Sie und beenden Sie. 2) Bearbeiten Sie die Datei /etc/crontab direkt, also vi /etc/crontab, und fügen Sie die entsprechenden Aufgaben hinzu. Die crontab -e-Konfiguration ist für einen bestimmten Benutzer, während die Bearbeitung von /etc/crontab für Systemaufgaben ist. Geplante Aufgaben anzeigen crontab -l //Listet alle aktuell geplanten Aufgaben auf crontab -l -u jp //Listet alle geplanten Aufgaben für den Benutzer jp auf Löschen eines Aufgabenplaners crontab -r //Alle Taskplanungsjobs löschen Bearbeiten Sie vim /etc/crontab direkt. Das Standarddateiformat ist wie folgt: SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=Stamm HOME=/ # Weitere Einzelheiten finden Sie unter man 4 crontabs # Beispiel einer Jobdefinition: # .---------------- Minute (0 - 59) # | .------------- Stunde (0 - 23) # | | .---------- Tag des Monats (1 - 31) # | | | .------- Monat (1 – 12) ODER Jan., Feb., März, Apr. … # | | | | .---- Wochentag (0 - 6) (Sonntag=0 oder 7) ODER So, Mo, Di, Mi, Do, Fr, Sa # | | | | | # * * * * * Benutzername-Befehl, der ausgeführt werden soll Diese Texterklärung ist ziemlich intuitiv. Sternchen (*): steht für alle möglichen Werte. Wenn das Monatsfeld beispielsweise ein Sternchen enthält, bedeutet dies, dass der Befehlsvorgang jeden Monat ausgeführt wird, nachdem die Einschränkungen anderer Felder erfüllt sind. Komma (,): Sie können einen durch Kommas getrennten Wertebereich als Liste angeben, zum Beispiel „1,2,5,7,8,9“ Mittlerer Strich (-): Sie können den mittleren Strich zwischen ganzen Zahlen verwenden, um einen Bereich von ganzen Zahlen darzustellen. Beispielsweise bedeutet „2-6“ „2,3,4,5,6“. Schrägstrich (/): Mit einem Schrägstrich können Sie die Häufigkeit des Zeitintervalls angeben. „0-23/2“ bedeutet beispielsweise eine Ausführung alle zwei Stunden. Gleichzeitig können Schrägstriche zusammen mit Sternchen verwendet werden. Beispielsweise bedeutet */10 im Minutenfeld eine Ausführung alle zehn Minuten. Hier sind ein paar Beispiele, die im Wesentlichen einige gängige Situationen abdecken: Beispiel 1 : : : : : : : : : : : : : : : # Führen Sie alle ausführbaren Dateien im Verzeichnis /etc/cron.daily jeden Tag um 4:22 Uhr als Root aus. Der Parameter run-parts gibt an, dass alle ausführbaren Dateien im folgenden Verzeichnis ausgeführt werden. Beispiel 2 #Apache jeden Abend um 21:30 Uhr neu starten 30 21 * * * /usr/local/etc/rc.d/lighttpd neu starten #Starten Sie Apache am 1., 10. und 22. jedes Monats um 4:45 Uhr neu 45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd neu starten #Starten Sie Apache jeden Samstag und Sonntag um 1:10 Uhr neu 10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd neu starten #Starten Sie Apache täglich alle 30 Minuten zwischen 18:00 und 23:00 Uhr neu 0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd neu starten #Apache jeden Samstag um 23:00 Uhr neu starten 0 23 * * 6 /usr/local/etc/rc.d/lighttpd neu starten #Starten Sie Apache jede Stunde zwischen 23:00 und 7:00 Uhr neu 0 23-7/1 * * * /usr/local/etc/rc.d/lighttpd neu starten #Apache jede Stunde neu starten 0 */1 * * * /usr/local/etc/rc.d/lighttpd neu starten #Starten Sie Apache am 4. jedes Monats und jeden Montag bis Mittwoch um 11 Uhr neu 0 11 4 * Mo-Mi /usr/local/etc/rc.d/lighttpd Neustart #Starten Sie Apache am 1. Januar um 4:00 Uhr neu 0 4 1 jan * /usr/local/etc/rc.d/lighttpd neu starten #Zeit jede halbe Stunde synchronisieren 0/30 * * * * /usr/sbin/ntpdate 210.72.145.44 Beachten * *1 * * * Der Befehl wird jede Minute innerhalb jeder Stunde ausgeführt. Sie müssen die Anzahl der Minuten jeder auszuführenden Stunde angeben, d. h. das erste * muss in eine Zahl geändert werden. Denn das * steht für jede Minute. Es gibt keinen Unterschied zwischen /1 und Stunde, beides geschieht einmal pro Stunde. Wenn Sie */2 einstellen, wird es tatsächlich nach der Anzahl der Stunden ausgeführt, die durch 2 teilbar sind, statt nach 2 Stunden ab Beginn der Zeiteinstellung. Wenn es beispielsweise auf 9 Uhr eingestellt ist, wird es um 10 Uhr ausgeführt. Schließlich kann es zu folgendem Problem kommen Geben Sie crontab -l als Root-Benutzer ein, um anzuzeigen kein Crontab für Root. Beispiel: [root@CentOS ~]# crontab -l kein Crontab für Root Dieses Problem ist sehr einfach. Geben Sie außerdem crontab -e als Root-Benutzer ein. Drücken Sie Esc. Drücken Sie: wq Enter. Es gibt kein Problem, wenn Sie crontab -l eingeben Der Hauptgrund ist, dass dieser Linux-Server zum ersten Mal Crontab verwendet und die entsprechende Datei noch nicht generiert wurde. Nach der Ausführung der Bearbeitung (crontab -e) wird diese Datei generiert. Die obige Methode zum Konfigurieren geplanter Skripts in Linux CentOS ist alles, was ich mit Ihnen teilen kann. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Das könnte Sie auch interessieren:
|
<<: Implementierung integrierter Module und benutzerdefinierter Module in Node.js
>>: Detaillierte Erläuterung der Funktionen und Verwendung allgemeiner MySQL-Speicher-Engines
Heute, als ich unterwegs war, schrieb mir ein Kol...
Tutorial-Reihe MySQL-Reihe: Grundlegende Konzepte...
transform:scale() lässt sich ein proportionales V...
Vorwort Abfangjäger In einigen modernen Front-End...
Eigentlich ist das ganz einfach. Wir fügen ein a-...
Inhaltsverzeichnis Erster Blick Erstellen einer V...
In diesem Artikel wird die Installations- und Kon...
Routing-Konfigurationsbefehle unter Linux 1. Host...
So installieren Sie Flash unter Linux 1. Besuchen...
Festlegen des MySQL-Root-Passworts Melden Sie sic...
Vorwort: Ich habe neulich einen Alibaba-Cloud-Hos...
In diesem Artikelbeispiel wird der spezifische Co...
Heute werden wir ein Thunder Fighter-Tippspiel im...
Klicken Sie hier, um zum Abschnitt „HTML-Tutorial“...
Da Uniapp nicht über eine autorisierte DingTalk-A...