Einfache Implementierungsmethode zur Linux-Prozessüberwachung und zum automatischen Neustart

Einfache Implementierungsmethode zur Linux-Prozessüberwachung und zum automatischen Neustart

Zweck:

Unter Linux kann das Serverprogramm aus verschiedenen Gründen abgebrochen werden, was sich auf die Benutzernutzung auswirkt. Hier bieten wir eine einfache Prozessüberwachungs- und Neustartfunktion.

Umsetzungsprinzip:

Das Skript wird von der geplanten Aufgabe crontab aufgerufen. Das Skript überprüft mit ps, ob der Prozess existiert. Wenn er nicht existiert, wird er neu gestartet und schreibt ein Protokoll.

Crontab-Änderung

# crontab -e
*/5 * * * * /mnt/bindmonitor.sh

Implementierung von /mnt/bindmonitor.sh

#!/bin/sh

host_dir=`echo ~` # Aktuelles Stammverzeichnis des Benutzers proc_name="/home/wkubuntu/named/sbin/named" # Prozessname file_name="/mnt/bindmonitor.log" # Protokolldatei pid=0

proc_num() # Anzahl der Prozesse berechnen {
 num=`ps -ef | grep $proc_name | grep -v grep | wc -l`
 return $num
}

proc_id() # Prozessnummer {
 pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'`
}

proc_num
Nummer=$?
if [ $number -eq 0 ] # Prüfe, ob der Prozess existiert, dann 
 /home/wkubuntu/named/sbin/named -c /home/wkubuntu/named/etc/named.conf -n 1 &
              # Befehl zum Neustarten des Prozesses, bitte ändern Sie proc_id entsprechend. # Holen Sie sich die neue Prozess-ID. echo ${pid}, `date` >> $file_name # Notieren Sie die neue Prozess-ID und den Neustartzeitpunkt in einer Datei.

Prozesstests löschen

ein. #killall -15 benannt

b. Führen Sie nach 5 Minuten cat /mnt/bindmonitor.log aus, um zu sehen, ob neue Datensätze vorhanden sind. Die Prozessnummer sollte der Prozessnummer in # ps -ef |grep named entsprechen.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM.

Das könnte Sie auch interessieren:
  • Detaillierte Erläuterung der Implementierungsmethode zur Linux-Überwachung wichtiger Prozesse
  • Shell-Skript zur Implementierung der Überwachung von Linux-System- und Prozessressourcen
  • Überwachung sowie Betrieb und Wartung von Linux-Diensten
  • Linux-Betrieb und -Wartung, grundlegendes Prozessmanagement, Echtzeitüberwachung und -steuerung

<<:  Analyse der Fallstricke beim Rundungsvorgang der ROUND-Funktion in MySQL

>>:  Vue Element Front-End-Anwendungsentwicklung Konventionelle Element-Schnittstellenkomponenten

Artikel empfehlen

TimePicker im Element deaktiviert einen Teil der Zeit (deaktiviert auf Minuten)

Die Projektanforderungen lauten: Datum und Uhrzei...

Detaillierte Erklärung der Meta-Tags und ihrer Verwendung in HTML

Ich werde keine weitere Zeit mit Unsinnsgerede ve...

Vue3.0 Adaptiver Betrieb von Computern mit unterschiedlichen Auflösungen

Zuerst müssen wir einige Abhängigkeiten installie...

So verwenden Sie vue.js zum Implementieren der Drag & Drop-Funktion

Vorwort Durch das Hinzufügen einer Drag & Dro...

Detaillierte Erklärung des Loop-Formularelementbeispiels in Vue

Manchmal stoßen wir auf eine solche Anforderung, ...

Tiefgreifendes Verständnis der MySQL-Selbstverbindung und Join-Assoziation

1. MySQL-Selbstverbindung MySQL muss beim Abfrage...

Analyse des Uniapp-Einsteiger-NVUE-Klettergrubenrekords

Inhaltsverzeichnis Vorwort Hallo Welt Bild Rahmen...

Lösung für das Problem des verstümmelten Codes in MySQL 5.x

MySQL ist eine häufig verwendete Open-Source-Date...

Detailliertes Tutorial zur Installation von Anaconda3 auf Ubuntu 18.04

Anaconda bezeichnet eine Open-Source-Python-Distr...

Vue+thinkphp5.1+axios zum Realisieren des Datei-Uploads

In diesem Artikel erfahren Sie, wie Sie mit think...

HTML-Tabellen-Markup-Tutorial (18): Tabellenkopf

<br />Die Kopfzeile bezieht sich auf die ers...

Spezifische Verwendung des MySQL-Parameters binlog_ignore_db

Vorwort: Nach dem Studium des vorherigen Artikels...

So ändern Sie $ in # in Linux

In diesem System steht das #-Zeichen für den Root...