10. /proc ファイルシステム

Linux の基本的な原則は、すべてがファイルとして扱われるということです。この概念は、実行中のプロセスにも及び、その情報は/procとして知られる特別な仮想ファイルシステムに動的に格納されます。

/procディレクトリの探索

/procファイルシステムは、ハードドライブ上の実際のファイルシステムではなく、カーネルによってメモリ上に作成されます。これは、カーネルの内部データ構造とシステムの状態への窓を提供します。

その内容を確認するには、その中のファイルとディレクトリを一覧表示できます。

ls /proc

多くの番号付きディレクトリが表示されます。各番号は、現在実行中のプロセスのプロセス ID(PID)に対応します。また、cpuinfomeminfoなどのファイルもあり、システムのハードウェア情報を提供します。

特定のプロセス情報へのアクセス

psのようなコマンドで PID を特定した場合、/proc内の対応するディレクトリを探して、より詳細な情報を取得できます。例えば、PID が 12345 のプロセスを調べるには、そのステータスファイルの中身を見ることができます。

cat /proc/12345/status

このコマンドは、プロセスの状態(例:スリープ中、実行中)、メモリ使用量、ユーザーID など、プロセスの詳細情報を表示します。/procディレクトリは、カーネルがプロセスを直接見るためのものであり、標準ツールよりもはるかに多くのデータを提供します。

システムデータのダッシュボード

/procファイルシステムを、多くのシステム監視ツールの生データソースと考えてください。toppshtopなどのユーティリティは/procから読み取り、情報をユーザーフレンドリーな形式で表示します。ここには、これらのツールがデフォルトで表示しないかもしれない豊富な追加の詳細情報が含まれています。

/proc内のファイルに直接アクセスすることで、カスタムスクリプトや、ニーズに合わせて調整された監視ダッシュボードを作成するための特定のメトリクスを収集できます。これは、Linux システムの内部動作を観察し、理解するための強力なインターフェースです。

ログインして学習進捗を保存

サインイン

演習

練習あるのみです!Linux プロセスとシステム監視の理解を深めるための実践的なラボを以下に示します。

  1. Linux プロセスの管理と監視 - このラボでは、Linux システムでプロセスを管理および監視するための必須スキルを学びます。フォアグラウンドプロセスとバックグラウンドプロセスの操作方法、psを使用した検査、topを使用したリソースの監視、reniceを使用した優先度の調整、killを使用した終了方法を探ります。

これらのラボは、実際のシナリオで概念を適用し、プロセス管理とシステム監視に対する自信を構築するのに役立ちます。

クイズ

プロセス情報を格納する仮想ファイルシステムは何ですか?回答は英語で、大文字と小文字の区別に注意してください。