[Linux] システムの稼働時間を調べる

定期的に再起動(リブート)をしていないシステムでは、システムが起動してからどのくらい日時が経過したかを知りたくなるときがあります。今回は、システム(OS)の稼働時間と起動した日時を調べる方法を紹介します。

1. uptimeコマンド

システム(OS)の稼働時間を調べるには、uptimeコマンドを利用します。

uptime – Tell how long the system has been running.

uptime [options]

uptimeコマンドをオプション無しで実行すると、システムの稼働時間と負荷(ロードアベレージ)を表示します。

$ uptime
 11:30:01 up 159 days, 16:11,  1 user,  load average: 0.08, 0.08, 0.06

このシステムは、OSが起動してから159日と16時間11分経過しているようです。一番左の時間(11:30:01)は現在の時間なので注意してください。’up’に続く日時が稼働時間を表しています。
これと同様の情報は、wコマンドやtopコマンドでも確認できます。
 
稼働時間だけを表示するには、’-p, --pretty‘オプションを利用します。

$ uptime -p
up 22 weeks, 5 days, 16 hours, 11 minutes

オプションなしで実行した場合とフォーマットが異なるところに注意してください。

2. システムの起動日時は?

uptimeコマンドをオプション無しで実行したときに表示されるのは、OSが起動してからの稼働時間です。システムがいつから起動しているか(起動日時)を調べるには、uptimeコマンドのsオプション(-s, --since)を利用します。

$ uptime -s
2017-10-20 19:18:59

whoコマンドの’-b, --boot‘オプションでも起動日時を表示することができます。

$ who -b
         system boot  2017-10-20 19:19

3. wコマンド

wコマンドでもシステムの稼働時間を表示することができます。

w – Show who is logged on and what they are doing.

wコマンドの実行結果の1行目に表示される内容は、uptimeコマンドと同じ内容になります。

$ w
 11:34:52 up 159 days, 16:15,  1 user,  load average: 0.07, 0.09, 0.06
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
:
:

4. topコマンド

topコマンドでもシステムの稼働時間を表示することができます。

top – display Linux processes

topコマンドの実行結果の1行目に表示される内容は、uptimeコマンドと同じ内容になります。

$ top -n 1
top - 11:35:20 up 159 days, 16:16,  1 user,  load average: 0.04, 0.08, 0.06
Tasks:  90 total,   1 running,  89 sleeping,   0 stopped,   0 zombie
:
:

 
以上、システムの稼働時間を調べる方法の紹介でした。