Start by verifying your server’s current time, date, and time zone:
timedatectl
This command displays:
Local time
Universal time (UTC)
Current time zone
NTP synchronization status
This helps confirm whether a change is required.
Ubuntu includes hundreds of time zones. To view the full list:
timedatectl list-timezones
If you want to filter by region (e.g., Asia):
timedatectl list-timezones | grep Asia
This makes it easier to find the exact zone you need, such as Asia/Kolkata.
Once you identify the correct time zone, apply it using:
sudo timedatectl set-timezone Region/City
Examples:
sudo timedatectl set-timezone Asia/Kolkata
sudo timedatectl set-timezone America/New_York
sudo timedatectl set-timezone UTC
The change is applied instantly and does not require a reboot.
Run the following again to confirm:
timedatectl
You should now see the updated time zone reflected in the output.
Some minimal installations or containers may not include timedatectl. In such cases, you can reconfigure the time zone using:
sudo dpkg-reconfigure tzdata
This opens a menu-based interface where you can select your region and city.
You can also manually link the appropriate zoneinfo file:
sudo ln -sf /usr/share/zoneinfo/Region/City /etc/localtime
Example:
sudo ln -sf /usr/share/zoneinfo/Asia/Kolkata /etc/localtime
This method is less common but useful in restricted environments.