概要
VMWare WorkStationでUbuntu22.04LTSをインストールし、起動後の時刻が9時間ずれているため、色々試した結果うまく行ったので備忘録程度に記事を記載
タイムゾーンが正しいのに時刻がずれている
timedatectlコマンドで時刻を確認したが、タイムゾーンがちゃんとJSTになっているのに9時間時刻がずれている、というかUTCが正しい時間でタイムゾーンのせいでずれていることがわかった。
ubuntu:~$ timedatectl status
Local time: 水 2024-08-21 19:43:28 JST
Universal time: 水 2024-08-21 10:43:28 UTC
RTC time: 水 2024-08-21 10:43:28
Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: no
NTP service: active
RTC in local TZ: no
とりあえず色々試してみた
timesyncd.confにNTPサーバーを記載
googleのNTPサーバーを記載してtimesyncdを再起動したがダメだった
ubuntu:~$ sudo vim /etc/systemd/timesyncd.conf
[Time]
NTP=time.google.com
#FallbackNTP=ntp.ubuntu.com
#RootDistanceMaxSec=5
#PollIntervalMinSec=32
#PollIntervalMaxSec=2048
ubuntu:~$ sudo systemctl restart systemd-timesyncd
ハードウェアクロックを疑った
hwclockコマンドで設定してみたがこれもうまくいかず
ubuntu:~$ sudo hwclock --verbose --systohc --localtime
最終的に解決した方法
探しても治らないから最終的にchatgptにきいてみたらこんな回答が返ってきた(解決した方法だけ抜粋してます)
自分:補足すると、WindowsからVMWare Workstationを使ってubuntuを起動しています、それが影響しているのでしょうか?
ChatGPT:
ChatGPT
VMware Workstation上でUbuntuを動作させている場合、ホストOS(この場合はWindows)の時刻設定やタイムゾーンの影響を受けることがあります。VMwareはデフォルトでホストの時刻をゲストOSに同期させる設定になっているため、この設定が原因で時刻にズレが生じる可能性があります。
VMware Toolsの影響
VMware Toolsがインストールされている場合、ホストの時刻とゲストOS(Ubuntu)の時刻を自動的に同期する機能が有効になっている可能性があります。これがタイムゾーンの設定に影響を与えている可能性があります。
対処方法
VMware Toolsの時刻同期を無効にする
VMware Toolsの時刻同期機能を無効にすることで、ホストの時刻に依存せず、ゲストOSが独自に時刻を管理できるようになります。
以下のコマンドを実行して、VMware Toolsの時刻同期を無効にします。
bash
コードをコピーする
sudo vmware-toolbox-cmd timesync disable
なるほど?と思い、一度確認したら無効と表示されていたので同期を逆に有効にしてみました
ubuntu:~$ vmware-toolbox-cmd timesync status
無効
ubuntu:~$ sudo vmware-toolbox-cmd timesync enable
ubuntu:~$ vmware-toolbox-cmd timesync status
有効
ubuntu:~$ ubuntu:~$ timedatectl status
Local time: 水 2024-08-21 11:05:56 JST
Universal time: 水 2024-08-21 02:05:56 UTC
RTC time: 水 2024-08-21 11:05:56
Time zone: Asia/Tokyo (JST, +0900)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
治りました、どうやらホスト側と同じ時刻を同期してくれるみたい