官方文档aws亚马逊ec2服务器修改系统时区

因为部署至AWS,结果程序打印出的时间是0时区的。
按照网上的方法修改了系统时间,结果运行了几天后竟然恢复成0时区了。
可能是我修改的姿势不对,导致AWS因为一些原因重启后时区恢复。
于是找了一下官网的方法,现在搬运至这里.
原文:https://docs.aws.amazon.com/zh_cn/AWSEC2/latest/UserGuide/set-time.html

在 Amazon Linux 上更改时区

默认情况下,Amazon Linux 实例设置为 UTC (协调世界时) 时区,但是您可能想将实例上的时间更改为本地时间或网络中的其他时区。

重要

这些过程适用于 Amazon Linux。有关其他发布版本的更多信息,请参阅其具体文档。

更改实例上的时区
  • 确定将在实例上使用的时区。/usr/share/zoneinfo 目录包含时区数据文件的层次结构。浏览该位置的目录结构,查找针对您的时区的文件。
[ec2-user ~]$ ls /usr/share/zoneinfo
Africa      Chile    GB         Indian       Mideast   posixrules  US
America     CST6CDT  GB-Eire    Iran         MST       PRC         UTC
Antarctica  Cuba     GMT        iso3166.tab  MST7MDT   PST8PDT     WET
Arctic      EET      GMT0       Israel       Navajo    right       W-SU
...

该位置的部分条目是目录 (如 America),这些目录包含针对特定城市的时区文件。查找要用于实例的城市 (或时区中的一个城市)。在此示例中,您可以使用洛杉矶的时区文件 /usr/share/zoneinfo/America/Los_Angeles。

  • 使用新时区更新 /etc/sysconfig/clock 文件。

    • 使用您常用的文本编辑器 (如 /etc/sysconfig/clockvim 或 nano) 打开 文件。您需要在编辑器命令中使用 sudo,因为 /etc/sysconfig/clock 归 root 所有。

    • 查找 ZONE 条目,将其更改为时区文件 (忽略路径的 /usr/share/zoneinfo 部分)。例如,要更改为洛杉矶时区,请将 ZONE 条目更改为以下内容:

      ZONE="America/Los_Angeles"
      

      注意

      请勿将 UTC=true 条目更改为其他值。此条目用于硬件时钟;如果您在实例上设置了其他时区,则无需调整此条目。

    • 保存文件,退出文本编辑器。

  • 在 /etc/localtime 与时区文件之间创建一个符号链接,以便实例在引用本地时间信息时找到此时区文件。

    [ec2-user ~]$ sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
    
  • 重启系统,以便所有服务和应用程序接受新时区信息。

    [ec2-user ~]$ sudo reboot
    
展开阅读全文

没有更多推荐了,返回首页