我的Windows Server 2008服务器的系统时间不断增加。为了调整时间,我必须关机并重置时间。
我尝试更换 CMOS 电池,但问题仍然存在。由于我们无法在此系统上访问互联网,因此无法与互联网时间源同步。
我该怎么做才能修复此问题,而不必重新安装 Windows?
答案1
显然,您需要为该服务器提供更准确的时间源。
由于您无法在此系统上使用互联网,因此您唯一的选择是在本地网络上安装(或使用现有的)时间源。您可以将服务器设置为与 LAN 上的另一台服务器同步,该服务器可以自己保持正确的时间,也可以与正确的时间源同步。
对于 Server 2008,有关如何配置 NTP 设置的说明位于此处,即 KB 816042。具体如何操作取决于您使用的时间源类型,因此我将由您自己决定,但该链接会向您展示如何操作,甚至提供自动“修复”选项(不过,我个人不会在生产服务器上使用这些选项)。
答案2
我假设这不是域中的机器。(如果是,您可能可以用它w32tm /config /syncfromflags: domhier
来与域控制器同步。)
我建议您在您选择的操作系统上设置一个内部 NTP 服务器,并将您行为不当的 Windows 服务器设置为使用w32tm /config /manualpeerlist: your.ntp.server /syncfromflags:manual
或类似命令与其同步。
答案3
了解时间漂移的确切程度将会很有帮助。请注意一些服务器实时时钟的漂移量是不可避免的。PC 中的时钟不是高精度原子钟。
每天 1-2 秒的漂移很常见,但最高可达每天约 10 秒。(这取决于主板上使用的 32.768KHz 晶体的精度公差。精度通常为 ±20ppm,相当于每天 1-2 秒的漂移。较便宜的晶体可能在 ±50ppm 或 ±100ppm 范围内,相当于每天 5-10 秒的漂移。)
如果您发现每天的漂移超过 10 秒,则您的 RTC 晶体可能以错误的频率运行。这意味着您的主板有缺陷,应该更换。如果系统仍在保修期内,请联系制造商。请注意,如果 RTC 晶体以错误的频率运行,您可能会看到系统的其他“奇怪”问题,因为任何依赖 RTC 进行休眠/延迟的软件都会不准确。 在问题解决之前,我不会在生产中使用该系统,尤其是在数据完整性很重要的情况下(域控制器、数据库服务器、文件服务器)。
即使每天 1-2 秒的偏差在最好的情况下也会随着时间的推移而累积。因此,您需要定期校正时钟。通常,Windows PC 会通过 Internet 通过以下方式同步其时间网络时间协议 (NTP)。如果计算机已加入域,它将与其域控制器同步。由于您无法访问互联网,因此您需要通过其他方法定期更正时间。
您可以手动进行定期更正(只需在 Windows 中编辑时间/日期),也可以将某种 NTP 服务器添加到本地网络以进行同步。您可以购买基于 GPS 的 NTP 服务器设备,价格不到 1000 美元。还有使用WWVB 电台或附近的蜂窝塔作为时间源。您还可以使用备用 PC 和 GPS 接收器以低成本构建自己的基于 Linux 的 GPS NTP 服务器。
另外,既然您提到了 CMOS 电池,我假设这是物理服务器,而不是 VM/虚拟机管理程序场景。请注意,虚拟机特别容易出现时钟漂移(每天几分钟),因此如果您进行了虚拟化,与外部时间源同步就变得非常重要。(VM 时间漂移本身就是一个话题。)