Change timezone to UTC and enable NTP using systemd (Ubuntu/Debian)
This guide explains how to change your system's timezone to UTC and enable Network Time Protocol (NTP) synchronization on modern Linux distributions that use systemd.
The Universal Time Coordinated (UTC) is the primary time standard by which the world regulates clocks and time.
Using UTC as your system timezone helps avoid confusion with daylight saving time changes and makes log correlation easier in distributed systems.
These commands were tested on Ubuntu 20.04 and Debian 10 (up to Debian 12), but they should work on any systemd-based Linux distribution.
Setting the timezone
1. Change timezone to UTC
sudo timedatectl set-timezone UTC
2. Enable NTP synchronization
sudo timedatectl set-ntp on
Verify the changes
Check your current settings using:
timedatectl
You should see output similar to this:
Local time: Tue 2025-05-27 15:13:46 UTC
Universal time: Tue 2025-05-27 15:13:46 UTC
RTC time: Tue 2025-05-27 15:13:46
Time zone: Etc/UTC (UTC, +0000)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
Understanding the output
- Local time: Current system time in the configured timezone
- Universal time: Current UTC time
- RTC time: Current hardware clock time
- Time zone: Currently set timezone
- System clock synchronized: Whether the system time is synchronized with NTP servers
- NTP service: Status of the NTP synchronization service
- RTC in local TZ: Whether the hardware clock is kept in local timezone (should be "no" for UTC)
Additional notes
- Some applications might expect the system to be in the local timezone. Test your applications after changing to UTC
- Hardware clock synchronization might require additional configuration on dual-boot systems
- Consider documenting timezone requirements in your system documentation
Resources
- systemd Documentation: timedatectl
- DigitalOcean: Time Synchronization Guide on Ubuntu 20.04
- Ubuntu Documentation: About time synchronisation