――Es wird wie bisher ein Artikel für Anfänger sein.
――Ich schreibe nicht im Detail über Cron. Wenn Sie also nicht viel über Cron wissen, ist es möglicherweise einfacher zu verstehen, wenn Sie den vorherigen Artikel lesen oder ihn lesen.
--Prozessüberwachung
vi
crontab -e
*/5 * * * * /bin/sh shell.sh
ShellScript
#! /bin/bash
PROCESS_NAME=nginx
count=`pgrep $PROCESS_NAME | wc -l`
if [ $count = 0 ]; then
echo "$PROCESS_NAME is stop"
systemctl start nginx
echo "$PROCESS_NAME is Start"
else
echo "$PROCESS_NAME is running"
fi
vi
crontab -e
*/5 * * * * /bin/sh shell.sh
//Wenn Sie das Obige in crontab schreiben, wird das Shell-Set alle 5 Minuten ausgeführt.
*/5 * * * * /bin/sh shell.sh >> /Jeder Ort/log.txt 2>&1
//Wenn Sie den Inhalt als Datei ausführen möchten, können Sie ihn wie folgt schreiben.
//2>&1 ist eine Mischung aus Standardausgabe und Fehler.
ShellScript
#! /bin/bash
//Dies ist wie ein Klischee beim Schreiben einer Muschel.
PROCESS_NAME=nginx
//Hier definieren Sie den Prozess, den Sie überwachen möchten. Diesmal ist es Nginx.
count=`pgrep $PROCESS_NAME | wc -l`
//Ich möchte die laufenden Prozesse zählen, also zähle ich die Anzahl der Prozesse und ordne sie einer Variablen zu.
//Rufen Sie eine Liste der Prozess-IDs ab, die dem Muster mit pgrep entsprechen.
// |(Pipeline)Mit wc-Verbinden Sie l, um die Anzahl der Zeilen im Prozess zu erhalten.
* Nebenbei kann wc zusätzlich zur Anzahl der Zeilen die Anzahl der Wörter und Bytes anzeigen, da die Wortanzahl der Ursprung des Namens ist.
if [ $count = 0 ]; then
echo "$PROCESS_NAME is stop"
systemctl start nginx
echo "$PROCESS_NAME is Start"
else
echo "$PROCESS_NAME is running"
fi
//Wenn die Anzahl der zuvor in dieser if-Anweisung definierten Prozesse 0 ist, bedeutet dies, dass nginx gestoppt wird. Schreiben Sie also die Shell, um wie oben zu beginnen.
//Wenn nicht, hat der Nginx-Prozess normal gestartet und wird dagegen wiedergegeben."$PROCESS_NAME is running"Ist zurück gekommen.
―― Es ist einfach, diese Cron-Einstellung mit dem beschriebenen Shell-Skript zu kombinieren, aber Sie können die Shell alle 5 Minuten ausführen, um den Prozess zu überprüfen. Wenn der Prozess gestoppt wird, wird er automatisch gestartet.
――Sie können Ihr Verständnis von Shell-Skripten vertiefen, indem Sie die folgenden Artikel lesen.
Einführung grundlegender Befehle für Shell-Skripte für Anfänger [UNIX & Linux Command Shell Skriptreferenz] (https://shellscript.sunone.me/tutorial.html)
Dieses Mal habe ich einen Artikel über die Prozessüberwachung mit cron geschrieben, der eine Fortsetzung des Artikels ist, den ich zuletzt geschrieben habe. Wenn Sie Fehler haben, lassen Sie es mich bitte in den Kommentaren usw. wissen, da dies meine Studie sein wird. Das nächste Mal möchte ich einen Artikel über Vagrant- und Middleware-Einstellungen schreiben.
Recommended Posts