If you dual boot your machine with Windows and pretty much any another operating system, you may notice your system clock jumping about and becoming wrong after switching between different OSs. This can also happen on Macs running OS X and Windows on Bootcamp too. Here’s how to solve it.
This was driving me mad after about a year and a half so finally decided to do something about it!
Why does this happen?
As it turns out it’s (unsurprisingly) Windows’ fault that this is happening.
In the computing world the hardware clock will normally be ticking along with its time set at UTC and the operating system then shows you the correct time based on your local timezone.
IE: If you’re in BST (which is GMT+1) the hardware clock will be at 12:00 but the operating system’s clock will report 13:00.
In the world of Windows, the hardware clock is set to match the current time wherever you are, so here both the hardware clock and Windows’ clock will read 13:00.
Now, when you close down your *nix/BSD operating system and then boot into Windows, Windows takes the system clock time as the actual time, hence the time jump (and why I’ve occasionally been exactly one hour late for things! Whoops.)
How do I fix it?
- Boot into Windows and run the Registry Editor (Start > Run > regedit)
- Browse to HKEY_LOCAL_MACHINE – SYSTEM – CurrentControlSet – Control – TimeZoneInformation
- Here, create a new DWORD named RealTimeIsUniversal and give it the value of 1
- Now make sure your time is correct in Windows
(Sorry for the layout of the registry path, my CMS won’t let me use backslash!)