中堅プログラマーの備忘録

忘れっぽくなってきたので備忘録として・・・

【raspberry PI 3B +】CentOS7でタイムゾーンを指定して時刻設定を行う

1.設定の確認

まずは時刻に関する現在の設定を確認します。

[root@localhost ~]# timedatectl
      Local time: Tue 2019-06-04 04:46:44 UTC
  Universal time: Tue 2019-06-04 04:46:44 UTC
        RTC time: n/a
       Time zone: UTC (UTC, +0000)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

内容については下表のとおりです。

設定項目 内容
Local time Time zoneで指定した地域での現在時刻
Universal time 協定世界時での現在時刻
RTC time リアルタイムクロックでコンピューターが内蔵している時計
Time zone 自分が存在する地域に設定
NTP enabled NTPサーバーと同期するかどうか
NTP synchronized NTPサーバーと同期しているか
RTC in local TZ リアルタイムクロックのタイムゾーン設定
DST active 0:夏時間の設定


内容を確認するとNTPは有効になっています。
ですので設定を変えるとしたら
【Time zone】くらいかと思います。
デフォルトではUTC(協定世界時)となっているので
ここを変更してみます。

2.タイムゾーンの一覧を取得

設定するタイムゾーン名がよくわからないので
下記のコマンドで確認します。

[root@localhost ~]# timedatectl list-timezones


ずらーっと大量のデータが表示されますが
その中に【Asia/Tokyo】を発見したのでこれに設定すればよさそうです。

3.設定する

【Time zone】を【Asia/Tokyo】に設定します。

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


ちゃんと変更されているか確認します。

[root@localhost ~]# timedatectl
      Local time: Tue 2019-06-04 14:07:27 JST
  Universal time: Tue 2019-06-04 05:07:27 UTC
        RTC time: n/a
       Time zone: Asia/Tokyo (JST, +0900)
     NTP enabled: yes
NTP synchronized: yes
 RTC in local TZ: no
      DST active: n/a

【Time zone】が【Asia/Tokyo】になり、正常な時刻に変更されました。

4.手動で時刻を変更する

NTPと同期することで時刻が設定されましたが
指定した時間での時刻の設定をしてみます。
とりあえず12時00分にしてみます。

[root@localhost ~]# timedatectl set-time 12:00:00
Failed to set time: Automatic time synchronization is enabled


NTPとの時刻同期が有効になっているので失敗してしまいました。
ですのでNTPとの同期を無効にします。

[root@localhost ~]# timedatectl set-ntp false


再度時刻を変更します。

[root@localhost ~]# timedatectl set-time 12:00:00


確認してみると

[root@localhost ~]# timedatectl
      Local time: Tue 2019-06-04 12:00:03 JST
  Universal time: Tue 2019-06-04 03:00:03 UTC
        RTC time: n/a
       Time zone: Asia/Tokyo (JST, +0900)
     NTP enabled: no
NTP synchronized: no
 RTC in local TZ: no
      DST active: n/a


変更が確認出来ました。