はじめに
最近Linux環境での作業、修正の機会が増えました。システムの負荷や状態を確認するコマンドについて忘備録としてまとめます。
システムの負荷の確認
代表的なuptimeとtopという2つのコマンドを紹介します。
uptime コマンド
システムの稼働時間と平均負荷を確認するためのコマンドです。
uptime
実行結果
下記を左から表しています。
1.現在時刻
2.システムの稼働時間
3.現在の接続ユーザ数
4.ロードアベレージ 過去1分、5分、15分の平均
ロードアベレージ (平均負荷)
『1CPUに対して、平均的にどれだけプロセスが実行待ちになっているか』を示す指標で、この数値が高いとLinuxのシステムが高負荷の状況であることを意味します。
top コマンド
システムのリアルタイムのプロセス情報を表示するためのコマンドです。 Cmd + Cで閉じます。
top
実行結果
1. システム全体の情報
項目 | 説明 |
---|---|
Load Average(平均負荷) | システムの1分、5分、15分間の平均負荷 |
Tasks (プロセス) | 現在のプロセスの数(実行中、スリープ中、停止中、ゾンビ) |
CPU usage (CPU使用率) | 各CPUの使用率(ユーザーモード、システムモード、アイドル、I/O待ちなど) |
Memory usage (メモリ使用率) | 使用中のメモリ、空きメモリ、バッファ、キャッシュの量 |
2. プロセスごとの情報
項目 | 説明 |
---|---|
PID (プロセスID) | 各プロセスの一意の識別子。 |
USER (ユーザー) | プロセスを実行しているユーザー名。 |
PR (優先度) | プロセスの優先度。低い値ほど高優先度です。 |
NI (ナイス値) | プロセスのナイス値。負の値は高優先度、正の値は低優先度。 |
VIRT (仮想メモリ使用量) | プロセスが使用している仮想メモリの量。 |
RES (実メモリ使用量) | プロセスが使用している物理メモリの量。 |
SHR (共有メモリ使用量) | 他のプロセスと共有しているメモリの量。 |
S (状態) | プロセスの状態(例えば、R = 実行中、S = スリープ、D = 割り込み不可のスリープ、Z = ゾンビ)。 |
%CPU (CPU使用率) | プロセスのCPU使用率。 |
%MEM (メモリ使用率) | プロセスの物理メモリ使用率。 |
TIME+ (累積CPU時間) | プロセスが使用した累積CPU時間。 |
COMMAND (コマンド) | プロセスを開始したコマンド名。 |
htop コマンド
topコマンドを見やすくするためのコマンドです。インストールが必要です。
インストール方法
// Mac OSの場合
brew install htop
// Ubuntu/Debianの場合
sudo apt update
sudo apt install htop
コマンド
htop
余談
Macのアクティビティモニターは上記コマンド等を使用して表示しているようです。
まとめ
WindowsはUNIX系ではないため別のコマンドになりますが、Macでは試せるのでターミナルでコマンドを打つだけでもよいので試してみてください!
最後に
私の働いている会社で経験の有無を問わず採用を行っています。
興味のある方は是非カジュアル面談から応募してみてください!