全部产品
阿里云办公

时间设置:设置Linux实例时区和NTP服务

更新时间:2018-09-10 19:27:21

时区和时间的同步性对于云服务器很重要(例如您在更新数据库时,时间的准确性对业务的影响会非常大),为避免实例上运行的业务逻辑混乱和避免网络请求错误,您需要将一台或多台实例设置在同一时区下,比如Asia/ShanghaiAmerica/Los Angeles。目前,所有地域的阿里云ECS实例的默认时区为CST(China Standard Time),您可以根据自己的业务需求并参照本文为ECS实例设置或者修改时区。此外,NTP(Network Time Protocol)服务能保证您的云服务器ECS的时间与标准时间同步,您可以根据本文配置NTP服务。

修改ECS实例时区

此处以Centos 6.5实例为例,列举通过修改配置文件修改时区的方法:

注意:修改时区后,请切记您需要运行hwclock -w更新实例硬件时钟。

您需要以root身份打开并编辑时区配置文件,所以此处使用sudo命令。

  1. 远程连接Linux实例。

  2. 执行命令sudo rm /etc/localtime删除系统里的当地时间链接。

  3. 执行命令sudo vi /etc/sysconfig/clock用vim打开并编辑配置文件/etc/sysconfig/clock。

  4. 输入i添加时区城市,例如添加Zone=Asia/Shanghai,按下Esc键退出编辑并输入:wq保存并退出。

    可执行命令ls /usr/share/zoneinfo查询时区列表,Shanghai为列表条目之一。

  5. 执行命令sudo ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime更新时区修改内容。

  6. 执行命令hwclock -w更新硬件时钟(RTC)。

  7. 执行命令sudo reboot重启实例。

  8. 执行命令date -R查看时区信息是否生效,未生效可重走一遍步骤。

设置NTP服务器

Linux系统有ntpdntpdate两种方式实现NTP时间同步,其中,ntpd同步时间为步进式的逐渐调整时间,ntpdate为断点更新。新购实例可使用ntpdate更新服务,已经运行业务的实例建议使用ntpd同步时间。此处提供标准NTP服务配置和自定义NTP服务配置,您可以根据需要选择性地配置。关于更多NTP服务信息请参考内网和公共NTP服务器

前提条件

NTP服务的通信端口为UDP 123,设置NTP服务之前请确保您已经打开UDP 123端口。您可以通过netstat -nupl查看实例是否开通UDP 123端口。您可以参考文档添加安全组规则放行UDP 123端口。

启用标准NTP服务

  1. 远程连接Linux实例。

  2. 执行命令sudo service ntpd start运行NTP服务。

  3. 执行命令chkconfig ntpd on启用NTP服务。

  4. 执行命令ntpstat查看是否启用了NTP服务。

  5. (可选)执行命令ntpq -p可查看NTP服务对等端的列表信息;执行命令sudo chkconfig --list ntpd可查看NTP服务的运行级别。

配置自定义NTP服务

  1. 远程连接Linux实例。

  2. 执行命令sudo vi /etc/ntp.conf用vim打开并编辑NTP服务配置文件。

  3. 找到server ntp 服务器 iburst的信息后,输入i开始编辑文件,给您暂时不需要的NTP服务器句首加上#隐藏起来。

  4. 新添加一行NTP服务器信息,格式为:server 您需要添加的NTP服务器 iburst。完成编辑后按下Esc键并输入:wq保存退出。

  5. 执行命令sudo service ntpd start启用自定义的NTP服务。

  6. 执行命令chkconfig ntpd on,启用NTP服务。

  7. 执行命令ntpstat查看是否启用了NTP服务。

如果问题还未能解决,您可以到阿里云社区免费咨询,或联系云市场商家寻求帮助。