topコマンドの基本を完全解説!リアルタイムでLinuxプロセスを監視する方法
生徒
「Linuxで今どんな処理が動いているか確認する方法ってありますか?」
先生
「ありますよ。topコマンドを使うと、リアルタイムでプロセスの状態を確認できます。」
生徒
「リアルタイムってどういうことですか?」
先生
「時間とともに変化するCPUやメモリの使用状況を、画面上でずっと更新しながら表示してくれるということです。」
生徒
「難しそうですが、初心者でも使えますか?」
先生
「基本はとてもシンプルです。順番に説明するので安心してください。」
1. topコマンドとは?
topコマンドは、Linuxで現在動いているプロセスの状態をリアルタイムで確認できる基本コマンドです。
プロセスとは、パソコンの中で動いているアプリや処理のことを指します。例えば、ブラウザやエディタ、裏側で動くシステム処理などがすべてプロセスです。
topコマンドを使うと、CPU使用率やメモリ使用量などを一覧で確認できるため、パソコンの負荷状況を把握するのにとても役立ちます。
イメージとしては、「タスクマネージャー」を黒い画面で操作するようなものです。
2. topコマンドの基本的な使い方
まずは、基本的な実行方法を確認しましょう。
top
top - 10:00:00 up 1 day, 2 users, load average: 0.10, 0.20, 0.30
Tasks: 100 total, 1 running, 99 sleeping
%Cpu(s): 5.0 us, 2.0 sy, 0.0 ni, 93.0 id
MiB Mem : 8000 total, 2000 free, 3000 used, 3000 buff/cache
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1234 user 20 0 100000 20000 5000 S 1.0 0.2 0:01.00 bash
このように、画面が自動で更新され続けます。終了したい場合は、キーボードの「q」を押します。
3. 表示される内容を理解しよう
topの画面は大きく分けて2つの部分があります。
上の部分では、システム全体の状態が表示されます。CPU使用率やメモリの使用状況などです。
下の部分では、個々のプロセスの一覧が表示されます。
特に重要な項目は以下です。
- CPU使用率 パソコンの処理の忙しさを表す数値
- メモリ使用量 アプリが使っている作業領域
- PID プロセスの番号
- COMMAND 実行しているプログラム名
これらを見れば、どのアプリが負荷をかけているのかが分かります。
4. よく使う操作キー
topは、起動中にキー操作で表示を変更できます。
- q 終了する
- P CPU使用率で並び替え
- M メモリ使用量で並び替え
- k プロセスを終了する
例えば、CPU使用率が高い順に並び替えるときは次のように操作します。
top
Pキーを押す
これにより、負荷の高いプロセスが上に表示されるため、原因調査がしやすくなります。
5. プロセスを終了する方法
不要なプロセスを終了することもできます。
top
k
PIDを入力
終了したいプロセスが停止する
PIDとはプロセスごとの番号です。間違ったプロセスを終了するとシステムに影響が出るため、注意して操作しましょう。
6. 更新間隔を変更する
topはデフォルトで数秒ごとに更新されますが、変更も可能です。
top -d 1
1秒ごとに更新される
リアルタイム性を高めたいときに便利です。
7. 特定ユーザーのプロセスだけ表示する
特定のユーザーのプロセスだけ確認することもできます。
top -u user
指定したユーザーのプロセスのみ表示
サーバー管理などで、誰の処理が負荷をかけているか確認する際に役立ちます。
8. psコマンドとの違い
似たコマンドにpsがありますが、大きな違いがあります。
psは一瞬の状態を表示するのに対して、topはリアルタイムで変化を追い続けることができます。
ps aux
ユーザーごとのプロセス一覧が表示される
簡単に言うと、psは写真、topは動画のようなイメージです。
まとめ
本記事では、Linuxにおけるプロセス管理の基本として重要なtopコマンドの使い方について、初心者にも分かりやすく丁寧に解説しました。topコマンドは、Linuxのシステム監視やサーバー運用において欠かせない基本コマンドの一つであり、リアルタイムでプロセスの状態を確認できる点が最大の特徴です。CPU使用率やメモリ使用量といったシステムリソースの消費状況を一覧で確認できるため、パフォーマンスの低下や異常な負荷の原因調査に非常に役立ちます。
特にLinux初心者の方にとっては、プロセスという概念自体が難しく感じられるかもしれませんが、topコマンドを使うことで視覚的に理解しやすくなります。例えば、どのプログラムが多くのCPUを使っているのか、どのプロセスがメモリを大量に消費しているのかといった情報を簡単に把握できます。このような情報は、サーバー管理やシステムトラブルシューティングにおいて非常に重要です。
また、topコマンドは単に情報を表示するだけでなく、操作キーを使って動的に表示内容を変更したり、プロセスの並び替えを行ったりすることができます。CPU使用率で並び替えることで負荷の高いプロセスを特定したり、メモリ使用量で並び替えることでリソースを圧迫しているアプリケーションを見つけたりすることが可能です。さらに、不要なプロセスを終了する機能も備えており、システムの安定性を維持するための強力なツールとなります。
以下に、基本的な操作の復習として代表的なコマンドをまとめます。
top
リアルタイムでプロセス一覧を表示
top -d 1
1秒ごとに更新される
top -u user
指定ユーザーのプロセスのみ表示
top
Pキーを押す
CPU使用率で並び替え
top
Mキーを押す
メモリ使用量で並び替え
また、psコマンドとの違いについても理解しておくことが重要です。psコマンドはその瞬間のプロセス状態を静的に表示するのに対し、topコマンドは時間の経過とともに変化する情報を動的に表示します。この違いを理解することで、状況に応じて適切なコマンドを使い分けることができるようになります。
Linuxのコマンド操作に慣れてくると、topコマンドは日常的に使用するツールとなります。特にサーバーエンジニアやインフラエンジニアを目指す方にとっては必須の知識です。今回学んだ内容を繰り返し実践し、コマンド操作に慣れていくことで、より高度なLinux操作やシステム管理へとステップアップしていきましょう。
生徒
「topコマンドって、Linuxの中で動いている処理をリアルタイムで見られるんですよね」
先生
「その通りです。CPU使用率やメモリ使用量など、システムの状態を常に更新しながら確認できます」
生徒
「負荷が高い原因を調べるときに便利そうですね」
先生
「はい。特にCPUやメモリで並び替える機能を使うと、問題のあるプロセスをすぐに見つけられます」
生徒
「PキーやMキーで並び替えができるのも覚えました」
先生
「素晴らしいです。さらにkキーを使えば、不要なプロセスを終了することもできます」
生徒
「でも間違って大事なプロセスを止めたら大変ですね」
先生
「その通りです。PIDをしっかり確認してから操作することが重要です」
生徒
「psコマンドとの違いも理解できました。topはリアルタイム、psは瞬間ですね」
先生
「良い理解です。用途に応じて使い分けることで、より効率的にLinuxを操作できるようになります」
生徒
「これからはサーバーの状態確認にtopコマンドを活用していきます」
先生
「ぜひ実際に使いながら慣れていきましょう。それが一番の上達方法です」