TIP: If you are using a Linux server with, Amazon Linux, RDS database and PHP, you also need to change the timezone settings on them!
Amazon Linux instances are set to the UTC (Coordinated Universal Time) time zone by default, but you may wish to change the time on an instance to the local time or to another time zone in your network.
***These procedures are intended for use with Amazon Linux. For more information about other distributions, see their specific documentation.
To change the time zone on an instance:
- Identify the time zone to use on the instance. The /usr/share/zoneinfo directory contains a hierarchy of time zone data files. Browse the directory structure at that location to find a file for your time zone.
[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
Some of the entries at this location are directories (such as America), and these directories contain time zone files for specific cities. Find your city (or a city in your time zone) to use for the instance. In this example, you can use the time zone file for Los Angeles, /usr/share/zoneinfo/America/Los_Angeles.
/etc/sysconfig/clock file with the new time zone.
- Open the
/etc/sysconfig/clockfile with your favorite text editor (such as vim or nano). You need to use sudo with your editor command because
/etc/sysconfig/clockis owned by
- Locate the
ZONEentry, and change it to the time zone file (omitting the
/usr/share/zoneinfosection of the path). For example, to change to the Los Angeles time zone, change the
ZONEentry to the following:
- Note: Do not change the
UTC=trueentry to another value. This entry is for the hardware clock, and does not need to be adjusted when you're setting a different time zone on your instance.
- Save the file and exit the text editor.
Create a symbolic link between
/etc/localtime and your time zone file so that the instance finds the time zone file when it references local time information.
[ec2-user ~]$ sudo ln -sf /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
Reboot the system to pick up the new time zone information in all services and applications.
[ec2-user ~]$ sudo reboot