ESXi 服务器的时区和 UTC 设置
大约 2 分钟
本文基于 ESXi 8U2 编写,不对其他版本尤其是旧版本负责。
今天配置 ESXi 的自动备份的时候才发现,关于时间这里有一个极其容易掉进去的大坑。
ESXi 服务器的时间是UTC时间,无法更改。但关于这一点的提示,无论在安装时还是日常使用时都似乎不够醒目。
同时,ESXi 的vm-tools
默认是关闭了时间同步选项的,也没有开网络同步选项。
而一般我们在里面的装的 Linux 会自己去网络上同步时间,如果只看客户机 Linux ,很容易根本不会发现时间设置有问题, 直到你装好第一台 Windows 客户机并且开始关注系统时间。
比较正确的设置方案是:
- ESXi 服务器的物理硬件时钟,应该调整为 UTC 时间,大约可以认为是伦敦时间;
- 如果需要网络对时,应该手动设置时间同步服务器,并且去服务里面手动打开
ntpd
服务,注意设置完开机自动启动之后还需要再操作一下启动; - 此时,“主机”页面-“系统信息”-“主机上的日期/时间”这里,应该显示 UTC 时间,比北京时间慢 8 小时;
- 此时,一些操作日志的时间应该是北京时间,因为你正在用时区设置为
+8
的浏览器访问;仅与浏览器提供的时区信息有关,没有自定义选项; - 此时,打开 Windows 客户机的话,时钟会是 UTC 时间;此时你用网络对时功能的话,时间是能正确回来的,但每次开机都会回到不正确的时间;
- 要解决这个问题,需要在
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
这里新建一个DWORD
类型的键, 叫做RealTimeIsUniversal
,有些教程说64为系统的话应该是QWORD
,我的测试结果是没啥关系,都好使; vm-tools
的时间同步功能默认是关闭的,似乎没啥开启的必要。