Linux 再起動時のログで時刻ずれが発生する

スポンサーリンク

NTPで時刻同期している環境で、OSを再起動すると、ログのタイムスタンプがずれてしまう。結論から言うとBIOS時刻をUTC(日本時間-9時間)を設定して、BIOS時刻(RTC)をUTC とみなす設定をする。

現状確認

timedatectl コマンド設定と確認ができる。現状を確認してみる。

# timedatectl 
           Local time: 木 2023-06-15 22:42:44 JST
       Universal time: 木 2023-06-15 13:42:44 UTC
             RTC time: 木 2023-06-15 13:42:44
            Time zone: Asia/Tokyo (JST, +0900)
          NTP enabled: yes
     NTP synchronized: no
      RTC in local TZ: yes
           DST active: n/a

RTC in local TZ: yes となっているので BIOSがLocal time とみなす設定になっている。
おそらくOS起動時にNTP同期する前にログが出力された場合、BIOS時刻を参照してしまうことでOS起動時のログだけ時刻がズレてしまう。

設定変更

設定変更は timedatectl コマンドに set-local-rtc オプションをつけて引数は 0 とする。

# timedatectl set-local-rtc 0

変更後、同じく timedatectl コマンドで確認する。
RTC in local TZ が no になったことでBIOS時刻(RTC)をUTCとしてみなす設定となり、時刻ズレは発生しなくなった。

# timedatectl 
           Local time: 木 2023-06-15 22:42:44 JST
       Universal time: 木 2023-06-15 13:42:44 UTC
             RTC time: 木 2023-06-15 13:42:44
            Time zone: Asia/Tokyo (JST, +0900)
          NTP enabled: yes
     NTP synchronized: no
      RTC in local TZ: no
           DST active: n/a

もし設定を戻したい場合はtimedatectl コマンドに set-local-rtc オプションをつけて引数は 1 とする。

# timedatectl set-local-rtc 1 

コメント

タイトルとURLをコピーしました