psコマンドの基本!現在のプロセスを確認する方法を初心者向けに徹底解説
生徒
「Linuxで今動いているプログラムって、どうやって確認するんですか?」
先生
「それはpsコマンドを使えば確認できますよ。現在動作しているプロセスの一覧を見ることができます。」
生徒
「プロセスって何ですか?ちょっと難しそうです…」
先生
「プロセスとは、動いているプログラムのことです。アプリやコマンドが実行されると、それぞれがプロセスとして動きます。」
生徒
「なるほど!じゃあ、その動いているものを確認するのがpsコマンドなんですね!」
先生
「その通りです。基本から順番に見ていきましょう。」
1. psコマンドとは?
psコマンドは、Linuxで現在動いているプロセスを確認するための基本コマンドです。
プロセスとは、簡単に言うと「今動いている作業」のことです。例えば、ブラウザを開く、ファイルをコピーする、プログラムを実行する、これらはすべてプロセスとして動いています。
Windowsでいう「タスクマネージャー」に近い役割を持っており、Linuxではコマンドで確認します。
2. psコマンドの基本的な使い方
まずは一番シンプルな使い方です。
ps
PID TTY TIME CMD
1234 pts/0 00:00:00 bash
5678 pts/0 00:00:00 ps
このように、現在のターミナルで動いているプロセスが表示されます。
それぞれの項目の意味は以下の通りです。
- PID:プロセスID(プロセスごとの番号)
- TTY:どの画面で実行されたか
- TIME:CPUを使った時間
- CMD:実行しているコマンド
3. すべてのプロセスを表示する方法
先ほどのpsだけでは、自分のターミナルのプロセスしか見えません。
システム全体のプロセスを確認するには、オプションを追加します。
ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 169000 1000 ? Ss 10:00 0:01 /sbin/init
user 1234 0.1 0.2 50000 2000 pts/0 S+ 10:10 0:00 bash
auxオプションを使うことで、すべてのユーザーのすべてのプロセスを表示できます。
初心者の方は、まずこのコマンドを覚えておくと便利です。
4. よく使うオプションの意味
psコマンドには多くのオプションがありますが、よく使うものを紹介します。
a:他のユーザーのプロセスも表示u:ユーザー情報付きで表示x:端末に依存しないプロセスも表示
これらを組み合わせたのが、先ほどのps auxです。
つまり、「全部見せてください」という意味になります。
5. 特定のプロセスを探す方法
たくさんのプロセスの中から特定のものを探したい場合は、grepと組み合わせます。
ps aux | grep bash
user 1234 0.0 0.1 50000 2000 pts/0 S+ 10:10 0:00 bash
このようにすると、「bash」という名前のプロセスだけを絞り込んで表示できます。
これは非常によく使うテクニックです。
6. プロセスIDを確認する重要性
プロセスにはそれぞれ「PID」という番号があります。
この番号は、プロセスを操作するためにとても重要です。
例えば、プロセスを停止するときには、このPIDを使います。
ps aux | grep nginx
root 2222 0.0 0.3 60000 3000 ? Ss 10:20 0:00 nginx
この場合、PIDは「2222」です。この番号を使って操作できます。
7. psコマンドとtopコマンドの違い
psコマンドは、その時点のプロセスを一度だけ表示します。
一方で、topコマンドはリアルタイムでプロセスの状態を更新し続けます。
例えるなら、
- ps:写真を撮るようなもの
- top:動画を見るようなもの
状況に応じて使い分けると良いです。
8. 初心者が覚えておくべき使い方まとめ
初心者の方は、まず以下のコマンドを覚えておけば問題ありません。
ps
ps aux
ps aux | grep キーワード
これだけで、基本的なプロセス確認はできるようになります。
Linuxの操作に慣れてくると、プロセス管理はとても重要なスキルになります。
まとめ
psコマンドでLinuxのプロセス管理の基本を理解しよう
ここまで、Linuxコマンドの中でも非常に重要なpsコマンドについて、初心者の方にも分かりやすく丁寧に解説してきました。psコマンドは、現在実行中のプロセスを確認するための基本コマンドであり、Linuxの操作において避けては通れない知識です。 Linuxのプロセスとは、実行中のプログラムや処理のことを指し、システム内部では常に多くのプロセスが動いています。これらを可視化して確認できるのがpsコマンドの役割です。
基本コマンドの復習と実践例
まずは、基本となるpsコマンドの使い方を振り返っておきましょう。現在のターミナルで動いているプロセスを確認する場合は、以下のように実行します。
ps
PID TTY TIME CMD
1234 pts/0 00:00:00 bash
5678 pts/0 00:00:00 ps
このように、プロセスIDや実行コマンドなどの情報を一覧で確認することができます。Linux初心者の方は、まずこの出力内容の意味を理解することが重要です。
すべてのプロセスを確認する方法
システム全体のプロセスを確認したい場合は、ps auxコマンドを使用します。このコマンドは、Linuxシステム内のすべてのユーザーのすべてのプロセスを表示するため、トラブルシューティングやシステム管理に非常に役立ちます。
ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 169000 1000 ? Ss 10:00 0:01 /sbin/init
user 1234 0.1 0.2 50000 2000 pts/0 S+ 10:10 0:00 bash
このように、CPU使用率やメモリ使用量なども確認できるため、システムの負荷状況を把握する際にも重要なコマンドです。
grepコマンドとの組み合わせで効率的に検索
多くのプロセスの中から特定のプログラムを探す場合は、grepコマンドと組み合わせることで効率的に検索できます。これはLinuxの基本テクニックの一つです。
ps aux | grep nginx
root 2222 0.0 0.3 60000 3000 ? Ss 10:20 0:00 nginx
このようにして、目的のプロセスをすぐに見つけることができ、運用や開発の現場でも頻繁に使用されます。
プロセスIDの重要性を理解する
psコマンドで表示されるPIDは、プロセスを識別するための重要な番号です。このPIDを使うことで、プロセスの停止や管理を行うことができます。例えば、不要なプロセスを終了させる場合などに活用されます。
psコマンドとtopコマンドの違い
psコマンドは一度だけプロセスの状態を表示するのに対し、topコマンドはリアルタイムで更新されるという違いがあります。Linuxのプロセス監視では、この二つのコマンドを使い分けることが重要です。
初心者がまず覚えるべき重要コマンド
最低限覚えておきたいコマンドは以下の通りです。これらを使いこなせるようになれば、Linuxのプロセス管理の基本はしっかり身につきます。
ps
ps aux
ps aux | grep キーワード
Linuxコマンドの学習では、繰り返し実行して慣れることが非常に大切です。実際にコマンドを入力しながら理解を深めていきましょう。
生徒
「psコマンドって、今動いているプログラムを見るためのコマンドなんですね」
先生
「その通りです。Linuxではプロセス管理がとても重要なので、必ず覚えておきましょう」
生徒
「psだけだと少ししか表示されませんでしたが、ps auxだとたくさん表示されました」
先生
「はい。ps auxはすべてのプロセスを表示するので、より詳しく確認したいときに使います」
生徒
「grepと一緒に使うと、特定のプロセスだけ探せるのも便利でした」
先生
「とても良いポイントです。実務でもよく使うテクニックなので、しっかり覚えておきましょう」
生徒
「PIDも大事なんですよね」
先生
「はい。プロセスを操作するときには必ず使います。psコマンドで確認できる情報はどれも重要です」
生徒
「これでLinuxのプロセス管理の基本が分かってきました」
先生
「素晴らしいです。この調子で他のLinuxコマンドも学んでいきましょう」