0Pricing
Linux Server Deployment & SSH Mastery · レッスン

システムプロセスの監視

`ps`、`top`、`htop`などのツールで実行中のプロセスを確認し、リソースを大量消費しているプロセスを特定して、プロセスの状態を効果的に管理します。

「システムプロセスの監視」はCoddyKit上の無料Linux Server Deployment & SSH Masteryレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはLinux Server Deployment & SSH Mastery学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Linux Server Deployment & SSH Masteryコースには全4レッスンが含まれています。

プロセスとは何か

Linux におけるプロセスとは、実行中のプログラムのインスタンスです。実行するすべてのコマンドや開くすべてのアプリケーションが、1 つ以上のプロセスを開始します。

プロセスを理解することは、サーバー管理に欠かせません。システムの状態を監視し、問題をトラブルシューティングして、サーバーを安定して動作させるのに役立ちます。

`ps` の紹介:プロセスのスナップショット

ps コマンド(「process status」の略)は、現在実行中のプロセスのスナップショットを表示します。

デフォルトでは、現在のターミナルセッションに関連付けられたプロセスが表示されます。今この瞬間の状態を簡単に撮影するようなものです。

ps だけを実行してみましょう。

ps

`ps` ですべてのプロセスを表示する

現在のターミナルにあるプロセスだけでなく、システム上で実行中のすべてのプロセスを表示するには、ps に特定のオプションを指定する必要があります。

一般的な方法は次の 2 つです。

  • ps aux:すべてのユーザーのすべてのプロセスを表示します。
  • ps -ef:すべてのプロセスを完全な形式で表示します。

ps aux を使って、包括的な一覧を取得してみましょう。

ps aux

`ps aux` の出力を読み解く

ps aux の出力は圧倒されるように見えるかもしれませんが、重要な列から必要な情報を確認できます。

  • USER:プロセスを所有しているユーザーです。
  • PID:Process ID(プロセスID)の略で、各プロセスに割り当てられた一意の番号です。
  • %CPU:プロセスが使用しているCPU時間の割合です。
  • %MEM:プロセスが使用している物理メモリの割合です。
  • COMMAND:プロセスを開始したコマンドです。

これらの情報を使うと、誰が何を実行しているのか、またどれだけのリソースを消費しているのかを特定できます。

`top` を使ってみる:リアルタイム監視

ps がスナップショットを表示するのに対し、top(table of processes)は、システム上のプロセスを動的かつリアルタイムに表示します。

数秒ごとに更新され、現在最も多くのリソースを消費しているプロセスを確認できます。対話的に操作でき、並べ替えやフィルタリングも可能です。

top を終了するには、q を押します。

top

`top` の表示を理解する

top コマンドには、主に2つのセクションがあります。

  • Summary Area:上部に、システムの稼働時間、ユーザー数、ロードアベレージ、CPUとメモリの統計情報が表示されます。
  • Process List:概要の下に個々のプロセスが一覧表示されます。通常、デフォルトではCPU使用率の高い順に並びます。

%CPU と %MEM の値が高いプロセスを探すと、負荷の高いプロセスを見つけられます。

`htop`:強化版の `top`

htop は、top に似た対話型のプロセスビューアーですが、より使いやすいインターフェースと追加機能を備えています。

サーバーに最初からインストールされていない場合は、先にインストールする必要があります。Debian/Ubuntuベースのシステムでは、次のコマンドを使用します。

sudo apt update && sudo apt install htop

インストールしたら、htop と入力するだけで起動できます。

htop

`htop` の機能を操作する

htop には、top より優れた次のような機能があります。

  • 視覚的なバー:CPU、メモリ、スワップの使用量が、色付きのASCIIバーで表示されます。
  • 簡単なナビゲーション:矢印キーでスクロールし、Fキーで一般的な操作を実行できます(F6で並べ替え、F4でフィルタリング、F9でプロセスの終了など)。
  • プロセスツリー:プロセスを階層的なツリー構造で表示できます。

プロセスを視覚的に管理できる強力なツールです。

リソースを大量消費するプロセスを見つける

top と htop はどちらも、CPUやメモリなどのリソースを過剰に消費しているプロセスを特定するのに適しています。

top では、通常プロセスが %CPU の順に並びます。htop では、列をクリックするかF6を使って簡単に並べ替えられます。

%CPU または %MEM の値が高い場合は、サーバーの動作を遅くしている可能性がある「リソースを大量消費するプロセス」であることを示します。

プロセス監視の確認

リアルタイムでCPUとメモリを最も多く消費しているプロセスを、すぐに特定する必要があります。この作業に最適なコマンドはどれでしょうか。

まとめ:プロセスを監視する

Linuxサーバー上のプロセスを監視するための基本的なツールを確認しました。

  • ps:プロセスの静的なスナップショットを表示します。
  • top:リアルタイムでの動的な監視とシステム概要の表示に使用します。
  • htop:より高機能で対話的な top です。

これらのコマンドを使いこなすと、サーバーを正常かつ高い性能で維持できます。

よくある質問

「システムプロセスの監視」レッスンは無料ですか?

はい。「システムプロセスの監視」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Linux Server Deployment & SSH Masteryコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Linux Server Deployment & SSH Masteryコースには全4レッスンが含まれています。

「システムプロセスの監視」で何を学びますか?

`ps`、`top`、`htop`などのツールで実行中のプロセスを確認し、リソースを大量消費しているプロセスを特定して、プロセスの状態を効果的に管理します。 ブラウザで直接実行するハンズオンコードでLinux Server Deployment & SSH Masteryを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Linux Server Deployment & SSH Masteryを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのLinux Server Deployment & SSH Masteryは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「システムプロセスの監視」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このLinux Server Deployment & SSH Masteryレッスンでコードを書いて実行できますか?

はい。すべてのLinux Server Deployment & SSH Masteryレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. ユーザーとグループの管理
  2. システムプロセスの監視
  3. Cronによるスケジュールタスク
  4. systemdによるシステムサービスの管理
← Linux Server Deployment & SSH Masteryに戻る