Amazon Elastic Compute Cloud
Windows 实例用户指南
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

为 Windows 实例设置时间

对于许多服务器任务和进程来说,准确一致的时间参考是非常重要的。大多数系统日志包含时间戳,您可以用来确定问题发生的时间以及事件发生的顺序。如果您使用 AWS CLI 或 AWS 开发工具包从您的实例发送请求,这些工具会以您的名义签署请求。如果您的实例的日期和时间设置不正确,签名中的日期可能与请求的日期不匹配,进而导致 AWS 拒绝请求。建议对 Windows 实例使用协调世界时 (UTC)。不过,如果需要,可以使用其他时区。

更改时区

默认情况下,Windows 实例设置为 UTC 时区。您可以更改时间以符合本地时区或您的网络中其他部分的时区。

更改实例上的时区

  1. 从实例打开命令提示符窗口。

  2. 确定将在实例上使用的时区。要获取时区的列表,请使用以下命令:tzutil /l。此命令用以下格式返回所有可用时区的列表:

    display name time zone ID
  3. 查找要分配给该实例的时区 ID。

  4. 使用以下命令将时区分配给实例:

    tzutil /s "Pacific Standard Time"

    新时区应立即生效。

配置网络时间协议 (NTP)

Windows 实例使用 time.windows.com NTP 服务器来配置系统时间;不过,您可以更改该实例以根据需要使用另外一组 NTP 服务器。例如,如果您的 Windows 实例不能接入 Internet,则可以将它们配置为使用位于您的私有网络内的 NTP 服务器。您的实例的安全组必须允许端口 123 (NTP) 上的出站 UDP 流量。本节中的步骤说明如何验证和更改实例的 NTP 配置。

验证 NTP 配置

  1. 从实例打开命令提示符窗口。

  2. 通过键入以下命令获取当前 NTP 配置:

    w32tm /query /configuration

    此命令返回 Windows 实例的当前配置设置。

  3. (可选) 通过键入以下命令获取当前配置的状态:

    w32tm /query /status

    此命令返回实例与 NTP 服务器同步的最后时间和轮询间隔等信息。

更改 NTP 配置

  1. 从命令提示符窗口运行以下命令:

    w32tm /config /manualpeerlist:comma-delimited list of NTP servers /syncfromflags:manual /update

    其中,comma-delimited list of NTP servers 是所使用的实例的 NTP 服务器列表。

  2. 使用以下命令验证新设置:

    w32tm /query /configuration

配置 Windows Server 2008 及更高版本的时间设置

在更改 Windows 实例上的时间时,必须确保该时间在系统重新启动后仍然保留。否则,当实例重新启动时,它会恢复使用 UTC 时间。对于 Windows Server 2008 及更高版本,可通过添加 RealTimeIsUniversal 注册表项来保留时间设置。

设置 RealTimeIsUniversal 注册表项

  1. 从实例打开命令提示符窗口。

  2. 使用以下命令添加注册表项:

    reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
  3. 如果您使用的是在 2013 年 2 月 22 日之前创建的 Windows Server 2008 AMI (不是 Windows Server 2008 R2),则应验证是否安装了 Microsoft 修补程序 KB2800213。如果未安装该修补程序,请将其安装。该修补程序解决了一个已知问题,即 RealTimeIsUniversal 项会造成 Windows CPU 在夏令时期间以及在每个日历年开始时 (1 月 1 日) 在 100% 负荷下运行。

    如果使用的是运行 Windows Server 2008 R2 (不是 Windows Server 2008) 的 AMI,则必须验证是否安装了 Microsoft 修补程序 KB2922223。如果未安装该修补程序,请将其安装。该修补程序解决了一个已知问题,即 RealTimeIsUniversal 项阻止系统更新 CMOS 时钟。

  4. (可选) 验证该实例是否使用以下命令成功保存了该注册表项:

    reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /s

    此命令返回 TimeZoneInformation 注册表项的子项。列表底部应具有 RealTimeIsUniversal 项,与下面类似:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation Bias REG_DWORD 0x1e0 DaylightBias REG_DWORD 0xffffffc4 DaylightName REG_SZ @tzres.dll,-211 DaylightStart REG_BINARY 00000300020002000000000000000000 StandardBias REG_DWORD 0x0 StandardName REG_SZ @tzres.dll,-212 StandardStart REG_BINARY 00000B00010002000000000000000000 TimeZoneKeyName REG_SZ Pacific Standard Time DynamicDaylightTimeDisabled REG_DWORD 0x0 ActiveTimeBias REG_DWORD 0x1a4 RealTimeIsUniversal REG_DWORD 0x1

有关 Windows 操作系统如何协调和管理时间 (包括闰秒的添加) 的更多信息,请参阅以下主题: