【Linux】pidstatコマンドとは?CPU使用率・プロセス監視の使い方を解説

Linux

どーも!marusukeです!

この記事では

  • pidstatでできること
  • pidstatの使用例
  • pidstatのオプション

をわかりやすく解説します!

pidstatコマンドでできること

pidstat [オプション] [間隔] [回数]

pidstat は、プロセスごとのCPU・メモリ・I/O使用状況を確認できるコマンドです。どのプロセスがどれだけリソースを使っているかを細かく把握でき、パフォーマンス調査やボトルネック特定に役立ちます。

top と似ていますが、一定間隔で履歴を取得できるのが特徴です。

プロセスとは?
実行中のプログラムのこと。Linuxではすべての処理がプロセスとして管理されます。

pidstatコマンドの使用例

この例では、1秒ごとに3回、各プロセスのCPU使用率を表示しています。%CPU を見ることで、どのプロセスが負荷をかけているかがわかります。

$ pidstat 1 3
Linux 5.15.0 (hostname)   04/19/2026

12:00:01 AM   UID       PID    %usr %system  %guest   %CPU   CPU  Command
12:00:02 AM     0         1    0.00    0.01    0.00    0.01     0  systemd
12:00:02 AM  1000      1234    5.00    1.00    0.00    6.00     1  python
12:00:02 AM  1000      5678    2.00    0.50    0.00    2.50     0  chrome

pidstatの出力項目の意味

pidstatの出力にはプロセスごとのCPU使用状況が表示されます。それぞれの意味は以下の通りです。

項目 説明
UID プロセスを実行しているユーザーID
PID プロセスID(各プロセスを識別する番号)
%usr ユーザープログラムとしてCPUを使用した割合(アプリ処理)
%system カーネル(OS)がCPUを使用した割合
%guest 仮想マシン(ゲストOS)の実行に使われたCPU時間
%CPU 合計のCPU使用率(%usr + %system + %guest などの合計)
CPU そのプロセスが実行されたCPUコア番号
Command 実行されているコマンド名(プロセス名)

pidstatコマンドのオプション

オプション説明
-uCPU使用率を表示(デフォルト)
-rメモリ使用量を表示
-dI/O(ディスク)統計を表示
-wコンテキストスイッチ情報を表示
-tスレッド単位で表示
-p <PID>指定したPIDのみ表示
-C <コマンド名>指定したコマンドのプロセスを表示
-hヘッダを省略
-Vバージョン情報を表示

コンテキストスイッチとは?
CPUが実行するプロセスを切り替えること。頻繁すぎるとパフォーマンス低下の原因になります。

よくある使い方

# 特定プロセスのCPU監視
pidstat -p 1234 1

# メモリ使用量の監視
pidstat -r 1

# I/Oの確認
pidstat -d 1

pidstatsysstat パッケージに含まれているため、入っていない場合はインストールが必要です。

# Ubuntu / Debian
sudo apt install sysstat

# RHEL / CentOS
sudo yum install sysstat

以上です!
ここまで読んでいただきありがとうございました!

コメント

タイトルとURLをコピーしました