CentOS 7 サーバインストール時のタイムゾーン

CentOS 7 サーバインストール時に言語指定を「日本語」にすると、タイムゾーンが自動的に「Asia/Tokyo」に設定されます。インストール終了後にdateコマンドを実行すると、

[root@localhost ~]# date
2016年 3月 29日 火曜日 14:53:00 JST

と表示され、現在の日本の時刻に合っており、一見これでよさそうに見えます。

ところがchronyをインストールして実行したあと、時刻を確認すると、

[root@localhost ~]# date
2016年 3月 29日 火曜日 23:53:00 JST

となり、9時間進んでしまいます。

CentOS 6では、サーバインストール時に「時計をUTCに合わせる」というチェックボックスがあり、そのチェックを外しておけば時刻は正しく設定できました。ところがCentOS 7ではそのような設定が見当たりません。こちらのサイトにも「問答無用でUTCになる」と書かれてありますし。

上記のサイトの方は物理サーバで行っているようで、BIOS時刻云々という記述がありますが、私の方はVMWare上の仮想マシンなので、BIOSは関係なく、もっとすっきりしたやり方を発見しました。

それはインストール時に"ある設定"をするだけ。インストール時の言語を「日本語」に設定すると、タイムゾーンが自動的に「Asia/Tokyo」になりますが、それを「Etc/グリニッジ標準時」に変更します。このとき間違って「ヨーロッパ/ロンドン」にしないこと。これはGMTではなくローカルタイムである上に、今の時期だと「夏時間」になり、グリニッジ標準時より1時間進んでしまいます。

「アジア/東京」になっているところをクリック


「Etc/グリニッジ標準時」に変更


「Etc/グリニッジ標準時」になったことを確認


このあとインストールを終了して、dateコマンドで確認すると、

[root@localhost ~]# date
2016年 3月 29日 火曜日 14:53:00 GMT

となります。ここでchronyをインストールして実行すると、

[root@localhost ~]# date
2016年 3月 29日 火曜日 05:53:00 GMT

になり、日本時間より9時間遅れたように見えますが、GMT表記なので問題ありません。この後、

[root@localhost ~]# timedatectl set-timezone Asia/Tokyo

として、タイムゾーンを日本に変更すると、

[root@localhost ~]# date
2016年 3月 29日 火曜日 14:53:00 JST

となって日本時間の正しい時刻表示になります。timedatectl statusで確認すると、

[root@localhost ~]# timedatectl status
Local time: 火 2016-03-29 14:53:00 JST
Universal time: 火 2016-03-29 05:53:00 UTC
RTC time: 火 2016-03-29 05:53:00
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a

結局RTCをUTCに合わせたわけで、どうやらCentOS 7ではこの方法で対応ということになってしまうのかも。

以前、CentOS 7のデスクトップ版をインストールした時は、このような問題は起きなかったと思います(問題が起きた記憶がない)。なぜサーバインストール(最小限のインストール)の時にこのようになるかは不明です。

スポンサーサイト

テーマ: Linux | ジャンル: コンピュータ

ExtJSからSmartClientへ | Home | フランス語の変な読み方

コメント

コメントの投稿


非公開コメント

このページのトップへ