Disable UTC and use local time on Linux under multi-boot configurations By Armando Caussade, http://armandocaussade.org/ Version 1.1. August 3, 2019. Copyright © 2019 Armando Caussade. Some rights reserved. Creative Commons License BY-NC-ND 4.0. ----- INTRODUCTION A PC stores the time in a hardware clock on its motherboard, which can be accessed by the system BIOS. While the Linux operating system uses Coordinated Universal Time (UTC), other systems such as Microsoft Windows use local time with a timezone offset. This can bring a number of issues, specifically when using multi-boot configurations. To solve this, there are two options: (1) make Linux run on local time, or (2) make Windows run on UTC. For reasons that have been well documented elsewhere, there is a consensus that solution #1 is the easiest route to go. The procedure below should work with all Linux distributions that use the systemd initializing routine (meaning most distributions released after 2015). Superuser privileges are not required, and the change should be permanent. Everything should work after a reboot, but it would be wise to boot one more time into Windows and check that the local time is being reported correctly. PROCEDURE 1. First, check out if your system uses local time. To do this, open a terminal and type the following: $ timedatectl 2. Check the reported "RTC time" to see if it matches UTC or local time. RTC means "real time clock". 3. If the computer is on UTC, run the following command to switch to local time: $ timedatectl set-local-rtc 1 --adjust-system-clock 4. If you ever need to return the computer to UTC, run the following command: $ timedatectl set-local-rtc 0 --adjust-system-clock ###