Dual-booting is a popular practice to run two operating systems like Windows 10 with other OS, in my case its Linux. It’s quite impossible to get the system clocks to sync. And you are unable the right time either on Windows or Linux. As Windows assumes the local time is stored in the motherboard, while Linux stores the time the UTC time, which lead to a mismatch of time when you switch between Operating Systems.
But we found not one but solution to solve this issue.
Option 1: Configuring Linux to use local time
It works on any distro of Linux if it uses
systemd, which includes Ubuntu, Fedora, Red Hat, Debian, and Mint. It’s also incompatible with Windows’ own Internet time-syncing service. You can use the
timedatectl command to configure Linux to use local time.
Simply open the Terminal Window on your Linux Operating System and run the command written below:
timedatectl set-local-rtc 1 --adjust-system-clock
This orders Linux to store the time in local time, just like Windows does.
Before you reboot your system check your current settings, just make sure it has worked.
If you see “RTC in local TZ: yes”, Then it means the command has worked out.
To revert back to Linux original Time setting, simply enter the following command:
timedatectl set-local-rtc 0 --adjust-system-clock
Option 2: Ordering Windows 10 to use UTC Time
We don't recommend to use this option as editing Registry file can be risky and with Windows Feature update, the setting can revert back automatically. But if you decided to use this option, you'll have to turn off the Internet time updating feature on Windows. Simply head towards Settings > Time & Language > Date & time. You'll find Set time automatically turned on just turn off using the toggle.
Now you need to launch Registry Editor try not to mess with it and have a backup of your registry settings. In the search box on the taskbar, type regedit or Press and hold or right-click the Start button, then select Run. Enter regedit in the Open: box and select OK.
Navigate to the following key in the left pane of the registry editor:
Or simply copy and paste the above address in the address bar of your Registry Editor. How this only works with the latest version of Windows 10
Right-click on the TimeZoneInformation key and select New > DWORD (32-bit) Value.
Name the recently created DWORD Value as RealTimeIsUniversal. Now right-click on it and select Modify or just double-click on it.
Simply change the Value data from 0 to 1 and click OK. You can now close the registry editor. After the setting is applied, Windows will store time as UTC time, similar to Linux. Hence, this will fix any time differences between the Windows clock and the Linux clock.
In case, you ever want to undo this change, return to this location in the registry, right-click the
RealTimeIsUniversal the value you added, and delete it from your registry.