timedatectlが間違った現地時間を表示する

timedatectlが間違った現地時間を表示する

以下は、静的IPを使用してニュージーランドのサーバーで実行されているproxmox仮想マシンでtimedatectlコマンドを実行した結果です。

$ timedatectl
               Local time: Wed 2023-11-01 16:01:30 UTC
           Universal time: Wed 2023-11-01 16:01:30 UTC
                 RTC time: Wed 2023-11-01 16:01:30
                Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

クロック同期がオンになってNTPが有効になっているのに、なぜ間違った現地時間が表示されるのですか?タイムゾーンを手動で設定するのではなく、自動的に変更する方法はありますか?ありがとうございます!

答え1

サーバーのタイムゾーンを設定していないようです。現在UTC( '')に設定されていますが、Time zone: Etc/UTC (UTC, +0000)現在ニュージーランドに住んでいるため、対応する値が表示されます05:01:30 NZDT

NTPはUTCとのみ同期され、質問を投稿した時間に基づいてUTC時間が正しいようです。

sudo次のコマンドを使用して(rootまたは使用)サーバーのタイムゾーンを設定します。

timedatectl set-timezone NZ

サーバーをUTCとして実行し、アカウントの時間表示をニュージーランドの現地時間に変更するには、そのままにして代わりにtimedatectl環境変数を設定しますTZ

date    # UTC => "Wed,  1 Nov 2023 16:35:15"
export TZ=NZ
date    # NZ time (currently NZDT) => "Thu,  2 Nov 2023 05:35:15"

関連情報