How To Set or Change Time Zone/Date/Time on Ubuntu

July 10, 2019

Introduction

Modern operating systems detect and synchronize time using NIST (National Institute of Standards and Technology) time servers. NIST operates an atomic clock that neither gains nor loses a second in 300 million years.

However, you may find that your system needs to be synchronized with NIST time servers properly.

This guide shows you how to check and change Ubuntu's time, date, and timezone.

How To Set Time, Date, and TIme Zone on Ubuntu

Prerequisites

  • Some operations may require sudo or root privileges
  • The command line/terminal window (Ctrl-Alt-T)

Using timedatectl to Control the System Time and Date

Most modern Linux distributions such as Fedora, Debian, Ubuntu, Arch, CentOS v.7.x+, and other Unix-based systems provide the timedatectl utility. This command allows you to control and edit time and date settings using the command line.

Display Current Date and Time with timedatectl

To display the current time and date information, use the command:

timedatectl
current time and date in Ubuntu

The output provides local time, universal time, and the timezone and informs you if the synchronization process is enabled.

Sync Time to NIST Atomic Clock

Set the Ubuntu system to synchronize to the NIST atomic clock with the following command:

timedatectl set-ntp yes

To adjust the time and date manually, turn off NTP synchronizing with:

timedatectl set-ntp no

Note: NTP stands for Network Time Protocol.

How to Change the Time

To set the time to your specifications, use the following command:

timedatectl set-time 21:45:53

The time format is HH:MM:SS (Hours, Minutes, Seconds). Ensure the automatic time synchronization is off to enable changes.

How to Change the Date

Use the same command to define the date on the system:

timedatectl set-time 2019-04-10

The date format is YYYY-MM-DD (Year, Month, and Day).

How to Set a Timezone in Ubuntu

The timedatectl command additionally allows you to synchronize your systems with a time zone of your choosing. To change the time zone, follow the steps below:

1. To list the names of the time zones, use:

timedatectl list-timezones
list of all the timezones available for date and time

2. Find the location closest to you, then enter the following:

timedatectl set-timezone Region/Location

3. Replace Region/Location with a name from the time zone list.

The time zone list is extensive. Filter the list by keyword by piping the grep command:

timedatectl list-timezones | grep keyword
setting time zone using grep

Substitute keyword for any keyword you wish, such as America, Asia, or New_York.  If you get an error, double-check your spelling and make sure that you are using capital letters correctly.

How to Set Universal Time (UTC) in Ubuntu

UTC stands for Coordinated Universal Time and appears in scientific calculations and synchronizing between time zones across the globe. Synchronize your system with the following command:

timedatectl set-timezone UTC

There is no immediate output; however, you can check the applied settings with timedatectl.

Note: GMT and Zulu Time are often used to refer to UTC. They are equivalent terms when fractions of a second are not relevant.

How to Sync Hardware Clock

RTC stands for Real-Time Clock, another name for the hardware clock the computer. The system has a tiny quartz crystal and a battery that keeps time when the system disconnects from a network.

Set Hardware Clock to Sync to Local Timezone

To have the Real-Time Clock synchronize to your local time zone, enter:

timedatectl set-local-rtc 1

You may get an error in this mode, since updating the hardware clock to the local time zone is unsupported.

Set the Hardware Clock to Sync with UTC

Set the hardware clock to synchronize with UTC by entering the following command:

timedatectl set-local-rtc 0

As with the previous command, there is no confirmation that the change has applied. Verify the change manually with the timedatectl command.

Set Time, Date Timezone in Ubuntu Older Versions From Command Line

Older Ubuntu versions may not support the timedatectl command. Find out how to check the Ubuntu version.

There are alternative commands to display and adjust system time setting from a command line. Use the commands listed below:

  • To display the date and time of the operating system, use:
date
  • Change the date of the operating system by typing:
sudo date -s "YY-MM-DD HH:MM:SS"

Replace YY-MM-DD with Year-Month-Day, and HH:MM:SS with Hour:Minute:Second. You can set just the date or only the time, depending on your needs.

  • Display the time kept by the hardware clock (RTC) with any of the following commands:
sudo hwclock -r

or

sudo hwclock --show

or

sudo hwclock --show --verbose

Note: Some versions may not support the --verbose option, and it may not work on a virtual machine. The hardware clock may not hold the same time as the operating system.

  • Display the RTC time in UTC format:
sudo hwclock --show --utc
  • Change the time kept by the RTC:
sudo hwclock --set --date "MM/DD/YY HH:MM:SS"
  • Set OS time based on the hardware clock (RTC):
sudo hwclock --hctosys

This command tells the system to set the HC (hardware clock) to SYS (system):

  • Set the RTC based on the operating system time:
sudo hwclock --systohc

Use this command to reverse the previous process.

Conclusion

This guide showed you how to set the time,  date, and time zone on your Ubuntu system. Setting the system to synchronize with NTP is typically the best course of action.

Next, learn how to set up time synchronization on Debian.

Was this article helpful?
YesNo
Vladimir Kaplarevic
Vladimir is a resident Tech Writer at phoenixNAP. He has more than 7 years of experience in implementing e-commerce and online payment solutions with various global IT services providers. His articles aim to instill a passion for innovative technologies in others by providing practical advice and using an engaging writing style.
Next you should read
How to Change MySQL Server Time Zone
February 19, 2020

Your server's MySQL time zone and your own might be out of sync. Read this article to learn 2 ways of editing ...
Read more
How to Check Your Ubuntu Version
July 7, 2019

Finding out which Ubuntu version is running on your system can be important when troubleshooting issues or ...
Read more
How to Check Memory Usage in Linux, 5 Simple Commands
June 18, 2019

In this tutorial, learn the five most commonly used commands to check memory usage in Linux. We also provide ...
Read more
How to Check CPU Utilization in Linux with Command Line
March 6, 2024

You have probably noticed your Linux OS slowing down, especially when working harder. Understanding CPU ...
Read more