How to prevent Windows from changing the time when you use dual-boot

How to make Windows not change the time in dual-boot

There are many users who prefer to use Windows and Linux on the same computer. If there is space on the hard drive, being able to run both systems natively is a winning bet that doesn't give any problems. Well one: Windows does not respect the time when we started it after the Linux based operating system. Why is this happening? And more important: how can it be solved?

It is clear that, in this sense, the two operating systems do not get along. One says "it's 10 o'clock!" to which the other responds "no, it's 8!", but the two cannot be right. Or if? Well, everyone has their own, but I like the way Windows thinks better: it respects the physical time of the computer, while Linux bases its decision on the Coordinated Universal Time, which is defined as the main standard of time by which the world regulates clocks and time.

If there is a culprit, that is not it. seems be Windows

Right now, the most common in Spain is that, after running Linux, and this also happens if we run it from a USB, synchronize the time and return to Windows, the Microsoft system shows the time two hours below. To solve it, we just have to go to the settings and then click on synchronize timeBut isn't there a more direct way? Yes there is. Windows is a much more closed system than Linux, that is, in Linux everything is easier, so it is worth "convincing" Linux rather than the window system.

Making Linux read real time and not UTC

Before explaining the simple step we have to take, we must also explain that computers have two clocks: one based on software, the operating system, and another on hardware, which is the one in the CMOS / BIOS and is called RTC (Real Time Clock or Real Time Clock in English). And therein lies the problem: although they both measure time perfectly, each one chooses a reference, one picks it up from within and the other from outside.

To correct it, just do what you see in the screenshot: we open a terminal and write timedatectl set-local-rtc 1. If then we write timedatectl we can see that local time and internal clock do not match, but they will after reboot. The system gives us a warning that we must take into account: the time may not change automatically as we did last month, but it is something that should not happen. Just in case, you have to pay attention, but it is a way to avoid that Windows makes us dizzy and, in the case of suffering some dizziness, which you should not, it will be only twice a year, when the time is changed.

Who does it well?

Whether Linux or Windows does it right is subjective. Linux is based on UTC, that is, Coordinated Universal Time. What Linux does is look at that time and put it into the operating system based on our time zone. Windows works differently: it uses the hardware time, the computer clock. Which is better? After thinking about it, I think it's Linux that does it better., since we can change whatever we want and it will always calculate correctly. However, Windows will initially rely on what the hardware clock says and it often fails.

I have to confess that it is something that I had never considered and it has never been a serious problem for me because I use Windows very little, and also that it aroused my curiosity and I solved it after running into this article.