「仮想メモリ統計」の頭字語であるvmstatコマンドは、メモリ消費量、ディスク使用量、およびその他のシステム情報に関連する統計を表示するためのLinuxユーティリティです。これ以上面倒なことはせずに、vmstatコマンドの分析に取り掛かりましょう。
システムにvmstatコマンドがない場合でも、'sysstat'
のパッケージに含まれているため、心配する必要はありません。 。
Debian / Ubuntuユーザーは、aptコマンドを使用してパッケージをインストールできます:
sudo apt install sysstat
他のLinuxディストリビューションユーザーは'sysstat'
をインストールできますが 標準のインストールコマンドを使用します。
説明に移る前に、特定のユーザーにとって一部の情報が立ち入り禁止になっている可能性があるため、最初にrootアクセスを取得する必要があります。これは、'sudo -s'
によって実行できます。 または'sudo su'
。
vmstatコマンドの基本出力
セットアップに必要なすべての義務を完了したら、'vmstat'
を実行してみましょう。 ターミナルで。
最初は、日陰の出力はLinuxユーザーには理解できません。それに光を当ててみましょう。出力には6つのセクションがあり、以下にインデントされていない統計がいくつかあります。
- 手順 –プロセス統計
- r –プロセスの数 アクティブ システム内。
- b –眠っているの数 プロセス 。
- メモリ –メモリ統計
- swpd –仮想メモリの量 システムによって使用されています。スワップスペースは最初は使用されていません。ただし、システムの物理メモリが限界に近づいているため、カーネルはスワップパーティションを使用することを決定します。
- 無料 –無料の金額 メモリ 。
- バフ –メモリの量 バッファとして一時的に使用されています 。
- キャッシュ –キャッシュメモリの量 。
- スワップ –スワップスペース統計
- si –レート どのメモリで スワップイン ディスクから。
- そう –レート どのメモリで 交換されます ディスクに。
- io –入力/出力統計
- bi –レート ブロック 読む ディスクから。
- bo –レート ブロック 書かれている ディスクに。
- システム –統計のスケジューリング
- で –レート システム割り込みの 。
- cs –レート コンテキストスイッチの スケジューラーによって行われます。
- cpu –CPU統計
- 私たち – CPUの割合 ユーザープロセスに費やした時間 。
- sy – CPUの割合 カーネルプロセスに費やされた時間 。
- id –アイドル状態のCPUの割合 時間。
- wa – CPUの割合 入力/出力の待機に費やした時間 。
- st – CPUの割合 時間盗まれた 仮想マシンによる。
基本出力によって提供される上記の統計は瞬間的です。つまり、その特定の時点でのシステム情報です。出力とともにタイムスタンプを取得するには、'-t'
を使用できます。 オプション。
vmstat -t
継続的な統計出力
一連の'vmstat'
を取得するには 出力するには、次のコマンドを実行する必要があります:
vmstat <DELAY> <ITERATIONS>
この手順を理解するのはそれほど難しくありません。
-
'vmstat'
各統計間の遅延を指定できる離散値を提供し、コマンドが表示されます。 - <反復> –情報を印刷するためにコマンドが必要な回数。
注: コマンドを無限回数(基本的には無限ループ)実行するには、
<ITERATIONS>
を省略できます。 パラメータ。たとえば、
'vmstat 1'
1秒の遅延で統計を無期限に表示します。
メモリとスケジューリングの統計
次のコマンドを実行することで、メモリに関連するいくつかの拡張情報を表示できます。
vmstat -s
これらの要約統計量は自明です。
- 最初の行のセットは、システムで使用されているメモリの量を扱います。
- 合計物理的記憶
- 現在使用されているメモリ
- アクティブメモリ –最近使用された
- 非アクティブなメモリ –最近は使用されていません
- 無料 メモリ
- バッファ メモリ
- キャッシュ メモリ
- 交換 メモリ情報
- 次の一連の行は、さまざまな方法で使用されるCPUを表しています。
- 高優先度に使用されるCPU ユーザープロセス(良くない)
- 優先度が低いために使用されるプロセッサ時間 ユーザープロセス(いい)
- カーネルプロセス用のCPU
- アイドルCPU
- 入出力管理用のプロセッサ
- 割り込み要求用のCPU
- ソフトウェア割り込みに使用されるプロセッサ時間
- CPU盗難 一部の仮想マシンによる
- 次は、オペレーティングシステムのページングに関連する値です。
- ページングされたページの数 仮想メモリから
- ページアウトされたページの数 仮想メモリへ
- 読み取り元のページ数 スワップメモリ
- 書き込まれたページの数 スワップメモリ
- 最後の数字のセットは次のことを示します:
- 割り込みの数 起動時から
- コンテキストスイッチの数 システムスケジューラによって実行されます
- タイムスタンプ 最後の起動時
- フォークの数 子プロセスを作成するために行われます。 (この情報は、
'vmstat -f'
)
vmstatコマンドを使用してディスク統計を表示する
このコマンドは、ディスク使用量に関する同様の種類の統計を提供します。アクセスできる場所:
vmstat -D
各エントリには、いくつかの重要な情報が表示されます。
- ディスクの数 システムに存在します。
- パーティションの数 システム内。
- 合計数 要求された読み取りの 。
- マージされた読み取りの数 パフォーマンスを向上させるため。
- セクター数 すでにディスクから読み取られています。
- 費やした時間 読書 ミリ秒単位のディスク。
- 合計数 要求された書き込みの 。
- マージされた書き込みの数 パフォーマンスを向上させるため。
- セクター数 すでにディスクに書き込まれています。
- 費やした時間 執筆 ミリ秒単位でディスクに送信されます。
- 入力/出力の数 現在進行中 。
- 待機に費やした時間 入力/出力の場合 。
注:
'vmstat'
の特定のバージョン 、上記の出力の最後の2つのエントリは 正しく実装されていません。
各ディスク使用量の詳細な統計については、'-d'
を使用できます。 オプション。
vmstat -d
上記の出力は、システムに存在するすべての特定のディスクについて同じ統計を表示します。
Linuxカーネルによるメモリ使用量
Linuxカーネルは、システムでメモリを効率的に使用するために、スラブレベルのメモリ管理を実装しています。 vmstatコマンドは、Linuxカーネルによって維持されるスラブに関連する情報を提供します。
この種の出力は、次の方法で取得できます。
vmstat -m
出力の列は次のことを意味します:
- 最初の列はスラブの名前を示します (キャッシュ)。
- その後にオブジェクトの数が続きます 現在 開催 スラブ内(Num)。
- 次は、使用可能なオブジェクトの総数です。 スラブに存在します(合計)。
- 次の値はスラブのサイズです バイト単位(サイズ)。
- 最後の値はページ数です 各スラブ(ページ)に存在します。
これは、'vmstat'
によって提示される重要な情報をほぼ要約しています。 コマンド。
結論
これで、'vmstat'
の使用法に関するガイドは終わりです。 Linuxのコマンド。コマンドの仕様に興味がある場合は、マニュアルページが正しい道になります。
マニュアルページには、'man vmstat'
を実行してアクセスできます。 ターミナルで。この記事が読者に十分な情報を提供したことを願っています。