ps コマンドは、プロセスを監視するために最も一般的に使用されるコマンドであり、このコマンドを使用すると、システム内で実行中のすべてのプロセスに関する詳細情報を表示できます。
ps コマンドの基本的な形式は次のとおりです。
[root@localhost ~]# ps aux
#BS オペレーティング システム形式を使用してシステム内のすべてのプロセスを表示
[root@localhost ~]# ps -le
#Linux 標準コマンド形式を使用してシステム内のすべてのプロセスを表示
オプション:
- a: セッション リードを除く、端末のすべてのプロセスを表示します。
- u: プロセスに属するユーザーとメモリ使用量を表示します。
- x: 端末を制御しないプロセスを表示します。
- -l: 長い形式でより詳細な情報が表示されます。
- -e: すべてのプロセスを表示します。
ps コマンドは少し異なり、コマンド「ps aux」など、一部のオプションには「-」を含めることはできません。「aux」はオプションですが、先頭に「-」を含めることはできません。
【例 1】
[root@localhost ~]# ps aux # システム内のすべてのプロセスを表示 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.2 2872 1416 ? Ss Jun04 0:02 /sbin/init root 2 0.0 0.0 0 0 ? S Jun04 0:00 [kthreadd] root 3 0.0 0.0 0 0 ? S Jun04 0:00 [migration/0] root 4 0.0 0.0 0 0 ? S Jun04 0:00 [ksoftirqd/0] …省略…
表 1 に、上記の出力情報の各列の具体的な意味を示します。
ヘッダ | 意味 |
---|---|
ユーザー | このプロセスを作成したユーザー。 |
PID | プロセスのID。 |
%CPU | プロセスによって占有されている CPU リソースの割合。占有割合が高いほど、プロセスが消費するリソースが多くなります。 |
%MEM | プロセスによって占有される物理メモリの割合。占有割合が高くなるほど、プロセスが消費するリソースも多くなります。 |
VSZ | このプロセスによって占有される仮想メモリのサイズ (KB 単位)。 |
RSS | プロセスが占有する実際の物理メモリ サイズ (KB 単位)。 |
TTY | プロセスが実行されている端末。このうち、tty1 ~ tty7 はローカル コンソール端末 (Alt+F1 ~ F7 ショートカット キーで異なる端末を切り替えることができます)、tty1 ~ tty6 はローカル キャラクタ インターフェイス端末、tty7 はグラフィカル端末を表します。pts/0 ~ 255 は仮想端末 (通常はリモート接続端末) を表し、最初のリモート接続は pts/0 を占有し、2 番目のリモート接続は pts/1 を占有し、順に増加します。 |
ステータス | プロセスのステータス。一般的なステータスには次のようなものがあります。
|
始める | このプロセスの開始時刻。 |
時間 | このプロセスは CPU の計算時間を占有しますが、システム時間ではないことに注意してください。 |
指示 | このプロセスを生成したコマンドの名前。 |
【例2】「ps aux」コマンドはシステム内のすべてのプロセスを参照でき、「ps -le」コマンドもシステム内のすべてのプロセスを参照できます。「-l」オプションにより、「ps -le」コマンドは親プロセスの PID や優先度などのより詳細な情報を確認できます。ただし、これら 2 つのコマンドの基本的な機能は同じなので、どちらかをマスターすれば十分です。
[root@localhost ~]# ps -le FS UID PID PPID C PRI Nl ADDR SZ WCHAN TTY TIME CMD 4 S 0 1 0 0 80 0 - 718 - ? 00:00:02 初期化 1 S 0 2 0 0 80 0 - 0 - ? 00:00:00 kthreadd 1 S 0 3 2 0 -40 - - 0 - ? 00:00:00 移行/0 1 S 0 4 2 0 80 0 - 0 - ? 00:00:00 ksolirqd/0 1 S 0 5 2 0 -40 - - 0 - ? 00:00:00 移行/0 …省略…
表 2 に、上記の出力情報の各列の意味を示します。
ヘッダ | 意味 |
---|---|
F | プロセス フラグはプロセスの権限を示します。共通のフラグは次の 2 つです。
|
S | プロセスのステータス。特定のステータスは、「psaux」コマンドの STAT ステータスと一致します。 |
UID | このプロセスを実行しているユーザーの ID。 |
PID | プロセスID。 |
PPID | 親プロセスの ID。 |
C | プロセスの CPU 使用率。単位はパーセンテージです。 |
で | プロセスの優先度。値が小さいほど、プロセスの優先度が高く、CPU によってより早く実行されます。 |
で | プロセスの優先度は、値が小さいほど早くプロセスが実行されます。 |
アドレス | プロセスはメモリ内のどこにあるのでしょうか? |
サウスカロライナ州 | プロセスはどれくらいのメモリを占有しますか? |
ウィチャン | プロセスが実行中かどうか。「-」は実行中を意味します。 |
TTY | 该进程由哪个终端产生; |
TIME | 该进程占用 CPU 的运算时间,注意不是系统时间; |
CMD | 产生此进程的命令名; |
【例 3】如果不想看到所有的进程,只想查看一下当前登录产生了哪些进程,那只需使用 "ps -l" 命令就足够了:
[root@localhost ~]# ps -l #查看当前登录产生的进程 F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD 4 S 0 18618 18614 0 80 0 - 1681 - pts/1 00:00:00 bash 4 R 0 18683 18618 4 80 0 - 1619 - pts/1 00:00:00 ps