システム管理者は、CPUとメモリの使用率を頻繁に追跡する必要があります。 したがって、この目的のためにシェルスクリプトを使用して、これらのメトリックを自動的に計算し、最新の状態に保つことをお勧めします。 この記事では、LinuxでCPUとメモリの使用率を取得するためのシェルスクリプトを作成する方法を見ていきます。
CPUとメモリの使用率を取得するシェルスクリプト
CPUとメモリの使用率を取得するシェルスクリプトを作成する手順は次のとおりです。
空のシェルスクリプトの作成
ターミナルを開き、次のコマンドを実行して空のシェルスクリプトを作成します。
$ sudo vi system_stats.sh
CPUとメモリの使用率を計算する
CPUとメモリの使用率を計算するには、次の行を追加します。上記のコードでは、cpu、メモリ、およびディスクの使用率を計算するために、3つの関数cpu_usage、mem_usage、およびdisk_usageを定義しました。 また、cpu、メモリ、ディスクのしきい値も定義しました。CPU使用率を計算するには、topコマンドを実行し、grep+awkを使用して出力からアイドル状態のCPU%を抽出します。 次に、それを100から減算してCPU使用率を計算します。
メモリ使用量を計算するにはfreeコマンドを使用し、ディスク使用量を計算するにはdfコマンドを使用します。
また、これらの各値をそれぞれのしきい値に対してチェックし、しきい値を超えた場合には適切な警告を表示します。
Make Shell Script Executable
シェルスクリプトを実行可能にするには、次のコマンドを実行します。
$ sudo chmod +x system_stats.sh
テストシェルスクリプト
次のコマンドを使用してシェルスクリプトを実行できます
./system_stats.shcpu usage : 35%memory space remaining : 3330 MBdisk usage : 21%
cronジョブの作成
cpu、メモリ、ディスクの使用状況を頻繁に検査する必要があるため、cronジョブを作成することをお勧めします。 次のコマンドでcrontabを開きます。
$ sudo crontab -e
次の行を追加します。
0 10 * * * ./system_stats.sh >>/opt/system.log
上記のコードでは、実行するcronjobを設定しますsystem_stats.sh シェルスクリプト毎日10時。a.mと/opt/systemに出力を追加します。ログ… あなたの条件によってそれを変えることができます。
この方法では、単一のファイルにシステム情報の毎日の記録を持つことになります。 あなたは、単に次のコマンドでそれを表示することができます。
$ sudo cat /opt/system.log
この記事では、簡単なシェルスクリプトを作成して、LinuxシステムのCPU使用率、メモリ使用率、ディスク使用率の3つの最も重要なメトリックを追跡する方法を学びました。 これを使用して、システム情報とリソース使用率を定期的に追跡できます。
また読む:
LINUXでSSDの健全性をチェックする方法
Linuxでデフォルトゲートウェイを設定する方法
ディレクトリ内のすべてのファイルをタッチする方法
シェルスクリプトでForループを終了する方法
デフォルトのPythonバージョンを設定する方法