
新Linux入門|psコマンドを理解しよう!実行中のプロセスを確認する方法
Linuxでは多くのプログラム(プロセス)が同時に動作しています。
「今、どんなプロセスが動いているのか」「どのユーザーが何を実行しているのか」
といった情報を確認したいときに便利なのが psコマンド です。
psコマンドは「Process Status」の略で、実行中のプロセス情報を表示するコマンド です。
システム監視やトラブルシューティング、不要なプロセスの確認など、日常的に使われる非常に重要なツールです。

⚙️ psコマンドの概要
psコマンドは、現在実行中のプロセスを一覧表示し、PID(プロセスID)やCPU使用率、実行ユーザーなどを確認するために使います。
プロセスの状態を調べたり、後続のkillコマンドなどで終了させる際の判断材料として利用されます。
📘 コマンド書式
ps [オプション]📗 例
[suzuki@AlmaLinux ~]$ psこのように、引数を付けずに実行すると、現在の端末で動作しているプロセスのみが表示されます。
🔍 主なオプション一覧
| オプション | 説明 |
|---|---|
| -e | システム上で実行中のすべてのプロセスを表示する。 |
| -f | プロセスを詳細(親子関係や実行ユーザーなど)付きで表示する。 |
| -l | ロングフォーマットで詳細な情報を表示する。 |
| -a | すべての端末上のプロセスを表示する。 |
| -u | ユーザー単位でプロセスを表示し、CPUやメモリ使用率も表示する。 |
| -p | 指定したプロセスID(PID)の情報だけを表示する。 |
| -aux | BSD形式で全プロセスを表示(よく使われる形式)。 |
💡 ヒント
- ps -ef はLinuxで最もよく使われる形式で、全プロセスを詳細表示します。
- ps aux はBSDスタイルの表示形式で、macOSでも同様に使用できます。
🧪 psコマンドの使用例と出力解説
① 基本の使用
[suzuki@AlmaLinux ~]$ ps
PID TTY TIME CMD
3222 pts/0 00:00:00 bash
3686 pts/0 00:00:00 ps💬 現在のターミナル(pts/0)で実行中のプロセス(bash と ps)が表示されます。
② 全プロセスの詳細情報を表示
[suzuki@AlmaLinux ~]$ ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 1月21 ? 00:00:01 /usr/lib/systemd/systemd
root 2 0 0 1月21 ? 00:00:00 [kthreadd]
root 3685 2 0 00:40 ? 00:00:00 [kworker/0:0]
suzuki 3709 3222 0 00:42 pts/0 00:00:00 ps -ef💬 UID はユーザー名、PID はプロセスID、PPID は親プロセスIDを意味します。
この形式は、システム全体のプロセスを確認するときによく使われます。
③ ユーザーごとのプロセスを表示
[suzuki@AlmaLinux ~]$ ps -u suzuki
PID TTY TIME CMD
2326 ? 00:00:00 gnome-keyring-d
3222 pts/0 00:00:00 bash
3732 pts/0 00:00:00 ps💬 -u オプションを使うと、指定したユーザーが実行しているプロセスだけを一覧表示できます。
④ 特定のPIDを指定して確認
[suzuki@AlmaLinux ~]$ ps -p 2326
PID TTY TIME CMD
2326 ? 00:00:00 gnome-keyring-d💬 -p で特定のプロセス(この場合PID=2326)の情報だけを表示します。
⑤ 詳細なロングフォーマットで表示
[suzuki@AlmaLinux ~]$ ps -l
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD
0 S 1000 3222 3212 0 80 0 - 29284 do_wai pts/0 00:00:00 bash
0 R 1000 3778 3222 0 80 0 - 38331 - pts/0 00:00:00 ps💬 この形式では、優先度(PRI)や状態(S) など、より詳細な情報を確認できます。
S は「Sleep中」、R は「実行中」を意味します。
⚙️ プロセス情報の主な項目
| 項目 | 意味 |
|---|---|
| PID | プロセスID。各プロセスを一意に識別する番号。 |
| PPID | 親プロセスID。どのプロセスから起動されたかを示す。 |
| UID | 実行ユーザーのID。 |
| TTY | プロセスが関連する端末。 |
| TIME | プロセスが使用したCPU時間。 |
| CMD | 実行されたコマンド名。 |
💬 例えば、bashが親でpsが子の場合、bashのPIDがpsのPPIDとして表示されます。
こうしてプロセスの親子関係を確認できるのもpsコマンドの魅力です。
✅ まとめ
- psコマンド は、現在実行中のプロセスを確認するための基本コマンド。
- PID、PPID、CMD などを確認することで、プロセスの親子関係や実行状況を把握できる。
- -ef, -u, -l, -p などのオプションを組み合わせると、目的に応じて柔軟に情報を取得可能。
- システム監視やトラブルシューティングに欠かせない重要コマンド。
💬システム状態を把握する第一歩として「ps -ef」での確認が基本です。
慣れてきたら grep と組み合わせて特定プロセスを絞り込むなど、実践的な使い方に発展させましょう。
