Alibaba Cloud Linux 2镜像的ECS实例启动或重启后系统时间同步存在延迟,如何处理?

本文为您介绍Alibaba Cloud Linux 2镜像的ECS实例启动或重启后系统时间同步存在延迟的原因及解决方案。

问题描述

符合如下条件的ECS实例启动或重启后,系统时间与NTP服务器时间一直相差8小时,执行hwclock -w命令无法更改内核时间。

  • Alibaba Cloud Linux 2.1903的镜像版本。

  • kernel-4.19.24-10.al7.x86_64及之前的内核版本。

问题原因

硬件时钟RTC是正确的,同时也设置了_set-local-rtc_,但在启动低版本内核系统中没有将时间同步到Local Time(System Time)。

解决方案

  1. 在内核中开启如下配置。

    # Set system time from RTC on startup and resume
    CONFIG_RTC_HCTOSYS=y
    #  RTC used to set the system time
    CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
  2. /etc/rc.d/rc.local文件中增加hwclock --hctosys参数,使得系统在启动过程中同步时间。

    echo "hwclock --hctosys" >>/etc/rc.d/rc.local
    chmod +x /etc/rc.d/rc.local
  3. (可选)建议您升级内核至kernel-4.19.34-11.al7.x86_64及以上版本,彻底解决该问题。