技術ノート Linux Linux で sar コマンドを使用する方法

Linux で sar コマンドを使用する方法

Linux で sar コマンドを使用する方法

重要なポイント

  • sar コマンドは sysstat パッケージの一部であり、Linux コンピュータのさまざまな要素のパフォーマンス統計をリアルタイム レポートと履歴レポートで収集します。
  • 「sudo apt install sysstat」を実行します。 ターミナルで sysstat パッケージと sar をインストールします。
  • Sar は、CPU 負荷、メモリ ページング、スワップ使用量などに関するリアルタイムの統計を提供します。特定の期間の履歴データを表示して、過去のパフォーマンスの問題を分析することもできます。

sar コマンドを使用すると、Linux コンピュータのさまざまな要素の パフォーマンス統計 (リアルタイム データと履歴データの両方) を確認できます。この素晴らしいリソースの使い方を紹介します。

sar コマンドは何をするのですか?

sar コマンド、つまり System Activity Reporter は、 sysstat パッケージの一部です。 CPU 負荷 、メモリ ページング、メモリ使用率、スワップ使用量、ネットワーク I/O などの一連の統計情報をキャプチャします。これにより、リアルタイムのスナップショットでこのデータにアクセスできるようになり、現在コンピューターで何が起こっているかが履歴レポートで表示されます。

これはデーモンとしてバックグラウンドで実行され、10 分ごとに一連のデータを収集します。現在の日のデータがテキスト ファイルに書き込まれます。深夜になるとバイナリ ファイルに変換されます。ファイルは毎月上書きされるため、ハード ドライブの容量が着実に消費されることはありません。

sar コマンドを使用すると、システムに問い合わせて統計を確認できます。ただし、最初に sysstat パッケージをインストールする必要があります。

Linux で sar コマンドを使用する方法

sysstat パッケージのインストール

sysstat のインストールは非常に簡単です。 Linux システムのパッケージ マネージャーを使用してインストールし、 systemd を使用してバックグラウンド デーモンを有効にして開始します。

Ubuntu に sysstat をインストールするには、apt を使用します。

 sudo apt install sysstat

Fedora に sysstat をインストールするには、次のように入力します。

 sudo dnf インストール sysstat

Manjaro に sysstat をインストールするには、pacman を使用します。

 sudo pacman -S sysstat

sysstat をインストールしたら、コンピューターを起動するたびにデーモン ( バックグラウンド プロセス) として実行できるように、sysstat を有効にする必要があります。また、すぐに使用できるように今すぐ起動する必要があります。デーモンを有効にして起動するには、ユーティリティの systemd ファミリの一部である systemctl を使用します。

 sudo systemctl で sysstat を有効にする

sudo systemctl start sysstat

使用している sar のバージョンを確認し、応答していることを確認するには、 -V (バージョン) オプションを使用します。

 sar-V 

Linux で sar コマンドを使用する方法

sar を使用したリアルタイム統計

sar 使用すると、コンピューター内で現在何が起こっているかを確認できます。また、スナップショットとは、特定の時点でのプレイの状態を示すものであり、トレンドの方が役立つ場合もあるため、 sar に、指定した秒数の間隔をあけて複数のスナップショットを表示するように依頼できます。

Linux で sar コマンドを使用する方法

CPU統計

2 秒間隔で 3 セットの CPU 統計を表示するには、 -u (CPU) オプションを使用するこのコマンドを使用します。間隔が最初に来ることに注意してください。したがって、このコマンドは「3 セットのデータについて、2 秒単位で CPU 統計を表示する」ということになります。

 sar -u 2 3

端末ウィンドウを拡大すると、表がきれいに整列し、読みやすくなります。

最初の列のヘッダーはコマンドが実行された時刻です。列の値は、各データセットが収集された時刻です。他の列は次のとおりです。

  • CPU : CPU コアの数、またはすべてのコアの平均の ALL
  • %User : 「ユーザーランド」のユーザーレベルでアプリケーションを実行するのに費やした時間の割合。
  • %Nice : ユーザー レベルでのアプリケーションの実行に費やされた時間の割合 ( Nice 優先度)
  • %system : カーネル内のシステム レベルでのプロセスの実行に費やされた時間の割合。
  • %iowait : 保留中のディスク I/O 要求により CPU がアイドル状態だった時間の割合。
  • %steal : 仮想マシン では、ハードウェア ホストの CPU が別の仮想マシンにサービスを提供していたために仮想 CPU がアイドル状態だった時間の割合です。
  • %idle : 保留中のディスク I/O 要求がなく、 CPU が アイドル状態だった時間の割合。

最後の行は、前の行の平均です。

特定のコアの統計を表示するには、 -P (プロセッサごと) オプションを使用します。これに、CPU コアの番号、または 0,1,4 または 4-8 などのコア番号のリストまたは範囲が続きます。

このコマンドは、コア 1 について、1 秒間隔で 3 セットのデータを調べます。コアには 0 から番号が付けられていることに注意してください。

 sar -P 1 1 3

メモリページング統計

-B (ページング) オプションを使用すると、 sar ハードドライブへのメモリのページングに関連する統計を表示します。 5 秒間隔で 2 セットの情報を尋ねます。

 sar-B52

列には次の情報が含まれます。

  • pgpgin/s : システムが 1 秒あたりにハードドライブからページイン (取得) した合計キロバイト数。
  • pgpgout/s : システムが 1 秒あたりにハードドライブにページアウトした合計キロバイト数。
  • ault/s : システムによって 1 秒あたりに発生した、マイナーおよびメジャーの両方のページ フォールトの数。
  • majflt/s : ディスクからメモリ ページをロードする必要があった、システムが 1 秒あたりに発生した重大なフォールトの数。
  • pgfree/s : システムによってフリー リストに登録される 1 秒あたりのページ数。
  • pgscank/s : メモリ管理システム kswapd デーモンによって 1 秒あたりにスキャンされたページ数。
  • pgscand/s : 1 秒あたりに直接スキャンされたページ数。
  • pgsteal/s : システムが 1 秒あたりにキャッシュから再利用したページ数。
  • %vmeff : pgsteal / pgscan として計算され、これはページ再利用の効率を示します。

I/O転送速度

I/O および転送速度の統計を表示するには、 -b (注、小文字の「b」) オプションを使用します。 4 秒間隔で 3 セットのデータを要求しています。

 sar -b 4 3

これが柱が保持しているものです。

  • tps : 物理デバイスに対して行われた 1 秒あたりの転送リクエストの合計数。これはリクエストの数であることに注意してください。それらすべてが成功したわけではないかもしれません。
  • rtps : 物理デバイスに発行された 1 秒あたりの読み取りリクエストの合計数。
  • wtps : 物理デバイスに発行された 1 秒あたりの書き込みリクエストの合計数。
  • dtps : 物理デバイスに対して発行された 1 秒あたりの破棄要求の合計数。
  • パン/秒 : 物理デバイスから読み取られたデータの総量。この数値は、1 秒あたり 512 バイトのブロックで示されます。
  • bwrtn/s : 1 秒あたりのブロック単位で 物理デバイスに書き込まれるデータ の合計量。
  • bdscd/s : 1 秒あたりのブロック単位で破棄されたデータの合計量。

選択して確認できる情報のカテゴリは他にもたくさんあります。これらはすべて同じように使用されます。 -A (all) オプションを使用して、 sar がスローできるすべての完全なダンプを表示することもできます。

完全なリストについては、 sar のマニュアル ページを参照してください。

Linux で sar コマンドを使用する方法

sar を使用した過去の統計

履歴データを確認するには、通常の sar コマンドに -s (開始) および -e (終了) オプションを追加するだけです。時間は 24 時間制で表されます。

今日の 06:30 から 07:15 までの CPU 負荷がどのようになっていたかを確認するには、次のコマンドを使用します。

 sar -u -s 06:30:00 -e 07:15:00

前日の状況を確認するには、オプション フラグとして数値を使用します。数字はレポートする日を示します。 -1 オプションは昨日を意味し、 -2 オプションは 2 日前などを意味します。

昨日のデータを使用して、13:00 から 13:00 までの間にレポートを生成してみましょう。

 sar -u -1 -s 13:00:00 -e 13:30:00

レポートしたい日を指定するもう 1 つの方法は、コマンド ラインでその日のデータ ファイルの名前を使用することです。これには、 -f (ファイル名) オプションを使用します。

日次ファイルは「saXX」と呼ばれ、XX が月の日に置き換えられます。これらは Linux コンピューターのログ フォルダーに作成されます。 sar ログ フォルダーは、おそらく「/var/log/sa/」または「/var/log/sysstat/」と呼ばれます。

Ubuntu では「/var/log/sysstat/」なので、今月 21 日の 14:00 から 14:30 までの CPU 使用率 を確認するコマンドの形式は次のようになります。

 sar -u -s 14:00:00 -e 14:30:00 -f /var/log/sysstat/sa21 

Linux で sar コマンドを使用する方法

情報は力です

そして sar コンピュータのパフォーマンス に関して十分な情報に基づいた決定を下すのに十分な情報を確実に提供します。

あなたがサポートの役割に就いている場合、または友人や家族の技術サポートである場合、過去のデータを確認できることは、今日報告されたが実際には昨日起こった問題を掘り下げ始めるための優れた方法です。あるいは先週。

「 Linux で sar コマンドを使用する方法」に関するベスト動画選定!

よく使うLinuxコマンド、便利なちょいテクなどを紹介します
【ワンポイントレクチャー】Linuxでの圧縮と解凍のコマンド解説【Linux初心者:第6回】