If you are dual booting Windows and Linux, you might have seen a strange issue with Windows and Linux showing different times. Even if you set the time properly in either Linux or Windows, you might see a different time when you boot into the other operating system. Though this is not a big problem, it is very frustrating to manually fix the time each and every time. Not to mention, wrong time can sometimes interfear with some application and may disrupt your internet connection.
Why Does Windows and Linux Show Different Time When Dual Booting?
Generally, the current time is stored in your Motherboard and every time you boot into either Windows or Linux, they will make use of the time stored in Motherboard. However, the issue lies in how Windows and Linux interpret the time from the motherboard.
Windows: It assumes that whatever time is on the motherboard, it is your local time. Windows will not make any corrections or UTC (Greenwich Mean Time) off-sets. It just displays the time as is.
Linux: It assumes that whatever time is in the motherboard, it is the UTC time (Greenwich Mean Time). As such, Linux off-sets the motherboard time according to your location to show the actual local time.
As you can guess, both the methods are very good when they are used independently. But when you are dual booting, these methods will cause time sync issues and show different times in Windows and Linux.
Don't worry, though the issue seems complicated, it is very easy to fix Windows and Linux showing different time when dual booting. Just follow the below steps and you should be good.
Fix Different Time in Windows and Linux
To make Windows and Linux show the same time, you can either fix Linux to use the local time or fix Windows to use UTC (Universal Time Coordinated). I'm going to show how to fix the issue from within Windows. It is much easier, all you have to do is create a single Registry key.
Note: Before proceeding, please create Registry backup before making any changes to it. The backup will help you restore the Registry when you want to reset or if anything goes wrong while editing.
The first thing you need to do is stop Windows from resetting the changes we are about to make every time you restart your system.
1. Open the Windows 10 Settings app by pressing the keyboard shortcut
2. Navigate to "Time and Language > Date and Time." On the right-hand side, toggle the button under "Set time automatically" to "Off."
You can now proceed to Registry changes.
3. Open Windows Registry Editor by searching for "regedit" in the start menu.
4. Now, copy the below path, paste it into the address bar and press enter to instantly navigate to the target key. In Windows 7 and 8, you have to manually navigate to the required key.
5. Once you are here, right-click on the right panel and select "New > DWORD Value." Type the name as "RealTimeIsUniversal" and press Enter to save changes.
6. After creating the value, double-click on it, enter "1" in the Value Data field and click on the "Ok" button save the changes.
That's it. From this point forward, Windows and Linux will show the same time when dual booting. No more different times in Windows and Linux issue and you can enjoy both operating systems without manually changing the time each and every time.
If future, if you want to undo the changes you just made, either delete the "RealTimeIsUniversal" value or change the Value Data from "1" to"0." Also, turn on "Set time automatically" option in the Settings app.
Comment below sharing your thoughts and experiences about using the above method to fix Windows and Linux showing different times when dual booting.