LinuxLinux [リナックス / ライナックス]オープンソースのOSカーネルサーバーを運用していると、「サーバーがいつから起動しているのか知りたい」「現在システムにどれくらい負荷がかかっているか確認したい」という場面に頻繁に遭遇します。
そのようなときに最も手軽で便利なのが uptime コマンドです。本記事では、uptimeコマンドの基本的な使い方から、出力結果の詳しい見方(特にロードアベレージについて)、そして知っておくと便利なオプションまでをわかりやすく解説します。
uptimeコマンドとは?
uptime コマンドは、システムが現在稼働している時間(連続稼働時間)や、現在のシステムの負荷状況(ロードアベレージ)を1行でシンプルに表示するコマンドです。
Linux/Unix系OSOS [オーエス]Operating System。基本ソフトウェアで古くから存在する基本的なコマンドであり、一般的なLinux環境では top や free などと同じく procps(または procps-ng)パッケージに含まれています。
サーバーにログインした際、まず最初に実行してシステムの健康状態(ヘルスチェック)をサクッと確認するためによく使われます。
uptimeコマンドの基本的な使い方と出力結果の見方
端末(ターミナル)で引数なしで uptime と入力して実行するだけで、必要な情報が表示されます。
uptime 19:35:10 up 12 days, 4:15, 2 users, load average: 0.05, 0.02, 0.00このたった1行の出力には、重要な4つの情報が含まれています。左から順番に解説します。
1. 現在時刻
一番左にある 19:35:10 は、システムの現在時刻(ローカルタイム)です。
2. システムの稼働時間(up)
up 12 days, 4:15 の部分は、システムが起動してから現在まで経過した時間(連続稼働時間)を表しています。
この例では「12日と4時間15分」稼働し続けていることがわかります。もし再起動したばかりであれば up 15 min のように表示されます。
3. ログインしているユーザー数
2 users は、現在このシステムにログインしているユーザーのセッション数を示しています。同じユーザーが複数の端末からログインしている場合は、そのセッション数分カウントされます。詳細なユーザー情報を知りたい場合は who や w コマンドを使います。
4. ロードアベレージ(システム負荷)
load average: 0.05, 0.02, 0.00 の部分は、システムの平均負荷(ロードアベレージ)を示しています。左から順に 「過去1分間」「過去5分間」「過去15分間」 の平均負荷を表しています。
ロードアベレージの目安
ロードアベレージは「実行中および実行待ち(R状態)、またはディスクI/O待ち(D状態)などにあるプロセスの平均数」です。 LinuxのロードアベレージにはCPUCPU [シーピーユー]Central Processing Unit。コンピュータの頭脳となる中央演算処理装置の処理待ち(または処理中)だけでなく、ディスクの読み書き待ちなども含まれるため、単なる「CPU負荷」ではなく「システム全体の処理待ち状態」として捉えるのが正確です。
おおよその目安として、「CPUのコア数」 を基準に判断することが一般的です。
- ロードアベレージ < CPUコア数: 負荷は低く、システムは正常に処理をさばけています。
- ロードアベレージ = CPUコア数: リソースをフルに使い切っている状態です(処理の遅延が発生し始める境界)。
- ロードアベレージ > CPUコア数: 処理能力を超えており、処理待ちが発生している(重い)状態です。
例えば、CPUが4コアのサーバーにおいて、過去1分間のロードアベレージが 1.50 なら余裕がありますが、5.00 などの場合は処理が追いついていない可能性があります。
※注意点(あくまで目安であること) 「ロードアベレージ = CPUコア数」を境界とするのはあくまで大まかな経験則(目安)です。実際のシステムでは、マルチコア環境やハイパースレッディングの有無、あるいはコンテナ環境(cgroupによるリソース制限)などによって、単純にコア数と比較しただけでは実態を正確に把握できないケースもあります。
uptimeコマンドの便利なオプション
uptime コマンドには、出力結果を少し見やすくしたり、特定の情報だけを抽出するためのオプションが用意されています。
-p(—pretty):稼働時間だけを見やすく表示
システムの稼働時間(どれくらい起動し続けているか)だけを知りたい場合は -p オプションが便利です。ロードアベレージなどの余分な情報が省かれます。
uptime -pup 12 days, 4 hours, 18 minutes-s(—since):システムが起動した日時を表示
「どれくらい稼働しているか」ではなく、「いつ(何年何月何日 何時何分に)起動したのか」という正確な日時を知りたい場合は -s オプションを使います。
uptime -s2026-08-01 15:20:05サーバーが予期せず再起動してしまった際などに、いつ再起動がかかったのかを確認するのによく使われます。
※注意点(環境依存性について)
-s(--since)オプションは、一部の古いLinuxディストリビューションやprocpsのバージョン、または特定のUNIX系OSによってはサポートされていない(マニュアルに未掲載)場合があります。環境によってはエラーになる可能性がある点にご留意ください。
まとめ
uptime コマンドのポイントは以下の通りです。
- 実行するだけで、現在時刻、稼働時間、ログインユーザー数、ロードアベレージ が1行でわかる。
- ロードアベレージは過去1分・5分・15分の平均負荷であり、CPUコア数を基準に負荷状態を判断する。
- 稼働時間だけ知りたいなら
uptime -p、起動日時を知りたいならuptime -sが便利。
サーバーにログインしたら、まずは uptime を叩いてシステムの健康状態を確認する癖をつけておくと良いでしょう。
以上で本記事の解説を終わります。
よいITライフを!
人気記事
- 1
- 2
- 3
- 4
- 5
Rocky Linux対応。実際にWebサーバーを公開するまでのプロセスを体験できる、最も確実で実践的なガイドブックです。