Linuxプロセス監視と自動再起動の簡単な実装方法

Linuxプロセス監視と自動再起動の簡単な実装方法

目的:

Linux では、さまざまな理由でサーバー プログラムがダンプされ、ユーザーの使用に影響することがあります。ここでは、簡単なプロセス監視および再起動機能を提供します。

実施原則:

このスクリプトは、スケジュールされたタスク crontab によって呼び出されます。このスクリプトは、ps を使用してプロセスが存在するかどうかを確認します。存在しない場合は、再起動してログを書き込みます。

Crontab の変更

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

/mnt/bindmonitor.sh の実装

#!/bin/sh

host_dir=`echo ~` # 現在のユーザーのルートディレクトリ proc_name="/home/wkubuntu/named/sbin/named" # プロセス名 file_name="/mnt/bindmonitor.log" # ログファイル pid=0

proc_num() # プロセス数を計算する {
 num=`ps -ef | grep $proc_name | grep -v grep | wc -l`
 $numを返す
}

proc_id() # プロセス番号 {
 pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'`
}

プロセス番号
番号=$?
if [ $number -eq 0 ] # プロセスが存在するかどうか確認し、 
 /home/wkubuntu/named/sbin/named -c /home/wkubuntu/named/etc/named.conf -n 1 &
              # プロセスを再起動するコマンドです。proc_id を適宜変更してください。 # 新しいプロセス ID を取得します。 echo ${pid}, `date` >> $file_name # 新しいプロセス ID と再起動時間をファイルに記録します。

プロセステストの削除

a. #killall -15 名前付き

b. 5 分後、cat /mnt/bindmonitor.log を実行して、新しいレコードがあるかどうかを確認します。プロセス番号は、# ps -ef |grep named のプロセス番号と一致する必要があります。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。

以下もご興味があるかもしれません:
  • Linuxの重要プロセス監視の実装方法の詳細説明
  • Linux システムとプロセス リソースの監視を実装するシェル スクリプト
  • Linuxサービスの監視と運用および保守
  • Linuxの運用と保守、基本的なプロセス管理、リアルタイム監視と制御

<<:  MySQLのROUND関数の丸め演算における落とし穴の分析

>>:  Vue Element フロントエンドアプリケーション開発 従来の Element インターフェースコンポーネント

推薦する

Linux で JDK をインストールして環境変数を設定する方法 (この記事で十分です)

目次1. Linuxのビット数を確認する2. JDKをダウンロードする3. JDKをインストールする...

Macでのファイル権限の表示と設定の詳細な説明

序文Mac システムのターミナルでファイルの権限を変更するには、Linux の chmod コマンド...

VMware 12 での Ubuntu 16.04 インストール チュートリアル

この記事では、VMware 12でのUbuntu 16.04のインストールチュートリアルを参考までに...

Ubuntu 20.04 に GitLab をインストールして設定する方法

導入GitLab CE または Community Edition は、主に Git リポジトリのホ...

Vue-Jest自動テストの基本構成の詳しい説明

目次インストール構成よくある間違い事前テスト作業依存関係の扱いインスタンスとDOMを生成する要約する...

Linux コマンドラインで他のユーザーと通信する方法

Linux のコマンドラインで他のユーザーにメッセージを送信するのは簡単です。これを行うコマンドは多...

Vue 3 での watch と watchEffect の新しい使い方

目次1. 時計の新しい使い方1.1. ウォッチの使用構文1.2. 複数の属性値を監視する1.3. 参...

Centos7 で yum を使用して Mysql5.7.19 をインストールする詳細な手順

Centos7 の yum ソースには、mysql の代わりに mariaDB が使用されているため...

Linux 環境変数とプロセス アドレス空間の概要

目次Linux 環境変数とプロセスアドレス空間コードを通じて環境変数を取得するプロセスアドレス空間な...

MySQL 5.7 共通データ型

——「MySQL in Simple Terms (第 2 版)」からのメモ数値型整数型バイト最小最...

FileZilla Server の FTP サーバー構成と 425 エラーおよび TLS 警告の解決策の詳細な説明

123WORDPRESS.COM では、FileZilla のダウンロード リンクを提供しています:...

MySQL information_schema データベースの詳細な説明

1. 概要information_schema データベースは performance_schema...

Windows 2008 Server サブドメインを親ドメインに追加すると、ドメインが既に存在するというエラー メッセージが表示されます。

Windows 2008 Serverのサブドメインを親ドメインに参加させると、「ドメインは既に存...

JavaScript の高度なクロージャの説明

目次1. 閉鎖の概念追加の知識ポイント: 2. 閉鎖の役割: 3. 閉鎖例3.1 liをクリックする...

Iframe Web ページのナビゲーション ウィンドウに関する簡単な説明

Iframe Web ページのナビゲーション ウィンドウに関する簡単な説明 Iframe ウェブペー...