Linux のホスト監視コマンド: top、df およびその他のコマンドの説明
1. システムリソースの使用状況を表示します: トップ
1.1 topコマンドの概要
top コマンドは、Linux でよく使われるパフォーマンス分析ツールで、Windows のタスク マネージャーと同様に、システム内の各プロセスのリソース使用状況をリアルタイムに表示できます。
top は動的な表示プロセスです。つまり、ユーザーのキーを押すことで現在の状態を継続的に更新できます。コマンドがフォアグラウンドで実行された場合、ユーザーがプログラムを終了するまでフォアグラウンドを独占します。より正確に言うと、top コマンドはシステム プロセッサのリアルタイムのステータス監視を提供します。システム内で最も CPU に「敏感な」タスクのリストが表示されます。このコマンドは、CPU 使用率、メモリ使用率、および実行時間によってタスクを並べ替えることができ、このコマンドの多くの機能は対話型コマンドまたは個人用カスタマイズ ファイルで設定できます。
1.2 top コマンドの出力の解釈
top
先頭のコマンドの出力は 2 つの部分で構成され、上の部分はシステム全体のリソースの説明、下の部分はプロセスの説明です。
1.2.1 システムリソース全体の説明
この部分には 5 行のデータがあり、以下で説明します。
-
最初の行
top - 21:42:18 up 2:39, 3 users, load average: 0.00, 0.01, 0.05
パラメータ 説明する 上 コマンド名 21:42:18 システムの現在時刻 上 ホストが実行されている合計時間 ユーザー 現在のホストにログインしているユーザーの数 負荷平均 システム負荷、3つの値はそれぞれ1分、5分、15分の負荷条件です。 - 負荷平均データは、5 秒ごとにアクティブなプロセスの数を確認し、特定のアルゴリズムに従って計算された値です。この数値を論理 CPU の数で割った場合、結果が 5 より大きい場合は、システムが過負荷になっていることを示します。
-
二行目
Tasks: 228 total, 1 running, 227 sleeping, 0 stopped, 0 zombie
パラメータ 説明する タスク プロセス数の説明 合計 現在のホスト上のプロセスの総数 ランニング 現在実行中のプロセスの数。実行数が多いほど、ホストの負荷が大きくなります 睡眠 現在スリープしているプロセスの数 停止 現在停止しているプロセスの数 ゾンビ ゾンビプロセスの数 -
3行目
%Cpu(s): 0.0 us, 0.2 sy, 0.0 ni, 99.8 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
パラメータ 説明する %CPU(秒) CPU使用率の説明 私たち ユーザーのCPU使用率 そして システムCPU使用率 で 優先度の高いプロセスが占める CPU 時間の割合 ID アイドルCPU速度 の IO待機CPU使用率 こんにちは CPU ハードウェア割り込み速度 そして CPUソフトウェア割り込み速度 セント CPU 使用率を占有するための強制待機 -
4行目
KiB Mem : 4025948 total, 2182876 free, 893404 used, 949668 buff/cache
パラメータ 説明する KiB メモリ 物理メモリの説明 合計 合計物理メモリ 無料 合計空きメモリ 使用済み 使用されているメモリの総量 バフ/キャッシュ カーネルキャッシュとして使用されるメモリの総量 -
5行目
KiB Swap: 2097148 total, 2097148 free, 0 used. 2857828 avail Mem
パラメータ 説明する KiB スワップ 仮想メモリ(スワップスペース)の説明 合計 総交換エリア 無料 合計フリースワップ領域 使用済み 使用されたスワップの合計額 メモリを利用する バッファリングされたスワップの合計
1.2.2 プロセスの説明
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
736 root 20 0 295564 5328 4068 S 0.3 0.1 0:17.69 vmtoolsd
61076 root 20 0 168576 6928 5284 S 0.3 0.2 0:00.16 sshd
1 root 20 0 191412 4400 2644 S 0.0 0.1 0:02.96 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
6 root 20 0 0 0 0 S 0.0 0.0 0:00.22 ksoftirqd/0
パラメータ | 説明する |
---|---|
PID | プロセスID |
ユーザー | プロセス所有ユーザー |
PR | プロセスの優先度は小さいほど高くなります |
で | 適切な値、負の値は優先度が高いことを意味し、正の値は優先度が低いことを意味します |
仮想 | プロセスによって使用される仮想メモリ (KB 単位) |
レス | プロセスによって使用される物理メモリ (KB 単位) |
SHR | プロセスによって使用される共有メモリ (KB 単位) |
S | プロセス状態 (S スリープ、R 実行中、Z ゾンビ状態、N 負の優先順位、I アイドル状態) |
%CPU | プロセスで使用される CPU 速度 |
%MEM | プロセスメモリの使用量 |
時間+ | プロセスによって使用された合計 CPU 時間。単位は 10 ミリ秒です。 |
指示 | コマンド名/コマンドライン |
上記のパラメータはデフォルトで表示され、比較的重要です。さらに、次のような他のパラメータもあります:
PPID: 親プロセス ID
GROUP: プロセス所有者のグループ名
SWAP: プロセスによって使用される仮想メモリからスワップアウトされる サイズ
CODE :実行コードが占有する物理メモリサイズ、単位:kb
DATA:実行コード以外の部分(データセグメント+スタック)が占有する物理メモリサイズ、単位:kb
nFLT:ページフォールト数
nDRT:現在最後に書き込みを行ったページ数変更されました。
WCHAN: プロセスがスリープ中の場合、スリープ中のシステム関数名を表示
Flags: タスクフラグ。
1.3 トップコマンドオプション
top コマンドはパラメータ オプションもサポートしています
- 文法
top [参数选项]
-
共通パラメータオプション
パラメータオプション 説明する -d リフレッシュ時間を設定します。デフォルトは 5 秒です。 -p 特定のプロセスに関する情報のみを表示する -c プロセスを生成した完全なコマンドを表示します。デフォルトはプロセス名です。 -n 更新回数を指定する -b 非対話型および非フルスクリーン モードで実行し、バッチで top を実行します。通常は -n と連携して統計を出力する回数を指定し、出力を指定したファイルにリダイレクトします。 -私 アイドル (アイドル) または役に立たない (ゾンビ) プロセスを表示しない -u 特定のユーザーが開始したプロセスを検索する -
例
-
出力を 3 回フラッシュした後に終了
top -n 3
-
出力を 3 回更新した後に終了し、出力内容を top.log に書き込みます。
top -b -n 3 > top.log
-
ユーザー Tom によって開始されたプロセスを検索する
top -u tom
-
1.4 上位のインタラクティブ オプション
top が対話的に実行されるとき (つまり、-b オプションで開始されないデフォルトのコマンド)、次の対話型コマンドを使用してそれを制御できます。
ボタン | 説明する |
---|---|
hキー | h キーを押すとヘルプ画面が表示され、ESC キーを押すと戻ります。 |
Cキー | c キーを押すと、プロセスを生成する完全なコマンドが表示されます。これは -c パラメータに相当します。もう一度 c キーを押すと、デフォルトの表示に変わります。 |
fキー | fキーを押して表示する項目を選択します |
Mキー | M キーを押して、常駐メモリ サイズ (RES) で並べ替えます。 |
Pキー | P キーを押して、CPU 使用率に従って並べ替えます。 |
Tキー | T キーを押して時間/累積時間で並べ替えます。 |
Eキー | Eキーを押すと先頭メモリの表示単位が切り替わります。 |
鍵 | eキーを押すとプロセスメモリの表示単位が切り替わります。 |
1つのキー | 1 キーを押すと、平均負荷情報と開始時間情報の表示が切り替わります。 |
i键 | i キーを押すと、アイドル状態または無駄なプロセスが表示されなくなります (-i パラメーターと同等)。もう一度押すと、デフォルトの表示に変更されます。 |
Tキー | t キーを押すと CPU ステータス情報の表示に切り替わります。 |
mキー | mキーを押すとメモリ情報の表示に切り替わります。 |
-
例
-
h キーでヘルプを表示
-
fキーを押して表示する項目を選択
表示したいパラメータを選択しdキーを押す ※が表示されているパラメータ
-
2. ディスク情報監視:df
2.1 dfコマンドの概要
df コマンドを使用してハードディスクの使用状況を表示します
-
文法
df [-h]
より人間らしい単位で表示するには、-h を一緒に使用することをお勧めします
-
例
-
現在のホストのディスク使用量を表示する
df -h
-
3. ディスクレート監視: iostat
3.1 iostatの概要
iostat を使用して CPU とディスクに関する情報を表示できます
-
文法
iostat [-x] [num1] [num2]
- オプションの説明
- -x、詳細情報を表示
- num1: 数値、更新間隔
- num2: 数値、数回更新
- オプションの説明
-
例
-
現在のディスク速度を表示する
[root@localhost ~]# iostat Linux 3.10.0-1160.88.1.el7.x86_64 (localhost.localdomain) 2023年04月20日 _x86_64_ (2 CPU) avg-cpu: %user %nice %system %iowait %steal %idle 0.11 0.01 0.36 0.01 0.00 99.52 Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 2.63 66.01 7.26 915059 100700 dm-0 2.65 65.01 6.96 901194 96425 dm-1 0.01 0.16 0.00 2204 0 dm-2 0.01 0.10 0.16 1449 2206
-
現在のディスク レートの詳細情報を表示し、5 秒ごとに更新 (合計 3 回更新)
iostat -x 5 3
-
-
結果パラメータの説明
結果は、rKB/s、wKB/s、%util の 3 つに焦点を当てた、多くのパラメーターがあることを示しています。
rKB/s: 1 秒あたりにデバイスに送信された読み取りリクエストの数
wKB/s: 1 秒あたりにデバイスに送信された書き込みリクエストの数
%util: ディスク使用率