OSの時計時刻を変更したい - Linux

この記事は2007年02月27日に書かれたものです。

解説

Linuxのシステム時間を変更したい。 通常はntpを使用して自動的に時刻合わせをすればよいのだが、ポートが閉じている、ネットワークにつながっていないなど何らかの理由でntpが使用できない場合は、117の時報を聞きながら標準でインストールされている「date」コマンドを用いて、マニュアルで設定を行うことができる。

dateコマンドで日付の設定を行うには次のようにする。なおシステムそのものの設定を変更するため、実行にはroot権限が必要になる。

katsube@shana $ date 022711082007.55
2007年 2月 27日 火曜日 11:08:55 JST

日本人の感覚から言うとちょっとわかりづらい書式になっている。ルールは以下の通り。

 date [ MMDDhhmm [ [ CC ] YY ] [ .ss ] ]

それぞれの意味は次のようになる(manより抜粋)

MM   月
DD   日 (月内通算)
hh   時
mm   分
CC   年の最初の 2 桁 (省略可)
YY   年の最後の 2 桁 (省略可)
ss   秒 (省略可)

これではわかりづらいし覚えられない。毎回manやヘルプを参照するのも面倒だ。というわけで通常は次のオプションを使用して実行する(manより抜粋)

-d datestr, –date datestr
    現 在 の時刻・日付の代わりに、 datestr で指定された時刻・日付を表示する。
    datestr は普通のフォーマットならだいたいなんでも使うことができる。月名 、
    タイムゾーン、`am' や `pm' なども用いてよい。

上のオプションを用いると次のように記述できる。環境によっては期待通りに動作しない場合もある。その際は前述のわかりづらい例を用いるか、manやヘルプを参照のこと。

katsube@shana $ date -d "2007/02/27 11:18:01"
2007年 2月 27日 火曜日 11:18:01 JST

ちなみに、dateコマンドは現在日付の表示機能はもちろん、例えば3日後の日付を表示といった演算機能や、柔軟なフォーマットで表示できたりと豊富な機能を持ち合わせている。

関連書籍

コメント

コメントを入力. Wiki文法が有効です:
F᠎ V K᠎ S​ V