GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Crontab-Beispiel – alle 5 Minuten

Heute schauen wir uns das Crontab-Beispiel an, um alle 5 Minuten ein Skript auszuführen.

Crontab-Beispiel

Kürzlich habe ich den Memcached-Server auf dem CentOS-Betriebssystem installiert, um ihn als Caching-Mechanismus für mein VBulletin-Forum zu verwenden. Um sicherzustellen, dass es immer läuft, habe ich ein Shell-Skript geschrieben, um den Prozessstatus zu überprüfen und neu zu starten, wenn es nicht läuft. Um nun sicherzustellen, dass dieses Skript in einem bestimmten Intervall ausgeführt wird, habe ich crontab verwendet .

Crontab-Beispiel-Shellskript

Das Shell-Skript ist erweiterbar und Sie können ein ähnliches Skript schreiben, um jeden Dienst oder Prozess in Unix-Systemen neu zu starten.

Hier ist das Shell-Skript zum automatischen Neustart des Dienstes, das ich in meinem crontab-Beispiel verwende.

memcached_restart.sh


#!/bin/bash
ps -eaf | grep 11211 | grep memcached
# if not found - equals to 1, start it
if [ $? -eq 1 ]
then
/usr/local/bin/memcached -d -u nobody -p 11211 -U 11211 -l 127.0.0.1
else
echo "eq 0 - memcached running - do nothing"
fi

Der Hauptbefehl in diesem Skript besteht darin, den Prozess zu überprüfen. Verwenden Sie den Befehl „ps“ mit grep, um sicherzustellen, dass nur der gewünschte Dienst zurückgegeben wird und nichts zurückgegeben wird, wenn der Dienst nicht ausgeführt wird.

Sobald Sie den zu verwendenden Befehl gefunden haben, müssen Sie nur noch einen Startbefehl erteilen, um den Dienst auszuführen.

Testen Sie das Skript, um sicherzustellen, dass es wie erwartet funktioniert, bevor Sie es mit crontab so einstellen, dass es in regelmäßigen Abständen ausgeführt wird.

Crontab alle 5 Minuten Beispiel

Sobald Sie mit dem Skript fertig sind, müssen Sie einen Cron-Job einrichten, um dieses Skript in regelmäßigen Abständen auszuführen.
Ich habe den folgenden Eintrag verwendet, um dieses Skript alle 5 Minuten auszuführen.


*/5 * * * * /Users/pankaj/Downloads/memcached_restart.sh > /Users/pankaj/Downloads/memcache_restart.log 2>&1

Crontab-Fehler – Befehl nicht gefunden

Beachten Sie, dass crontab keine Umgebungsvariablen wie PATH berücksichtigt, sodass Sie immer den absoluten Pfad für jedes Programm oder jeden Verzeichnisort angeben müssen. Wenn Sie beim Ausführen eines Befehls in einem crontab-Shell-Skript den Fehler „Befehl nicht gefunden“ erhalten und dieser problemlos ausgeführt wird, wenn Sie ihn selbst ausführen, dann ist die Verwendung des relativen Pfads das Problem.

Referenz:Wikipedia


Linux
  1. Curl-Outfile-Variable funktioniert nicht in Bash-Skript?

  2. Verdächtiger Crontab-Eintrag, der alle 15 Minuten „xribfa4“ ausführt?

  3. Crontab-Protokoll:So protokollieren Sie die Ausgabe meines Cron-Skripts

  4. Wie erstelle ich eine Crontab über ein Skript

  5. Führen Sie das Python-Skript über crontab aus

Cron-Jobs alle 5, 10 oder 15 Minuten ausführen

So führen Sie jede Woche am Sonntag einen Crontab-Job aus

HDDTemp crontab jede Stunde in die Datei

Wie würde ich einen Cron-Job dazu bringen, alle 30 Minuten ausgeführt zu werden?

In Crontab generische Art, alle n Minuten anzugeben, wobei n > 60 ist

CronJob alle 25 Minuten