Any reason why Fedora uses local time instead of UTC?

I was setting up my PC to dual boot and I anticipated that I would need to set Windows to use UTC time and went ahead and did this.

Much to my chagrin, I then realized that Fedora uses local time by default.

At this point, since I have already switched Windows to use UTC time, is there any reason not to go ahead and switch Fedora to use UTC time?

My guess is that Fedora defaults to local time just to make life easier for people dual booting Linux and Windows but there is probably no advantage to it.

I disagree with you, Fedora defaults to UTC on the RTC every time I’ve installed it.

But then I only run with pure Fedora systems and never one with both Windows and Fedora on it. I suspect you reboot to Windows, it sets the RTC back to local, then you boot to Fedora and the RTC is on local but it doesn’t know that and misinterprets the time as off because it thinks it’s UTC.

Try running “timedatectl”

1 Like

I did this and it was set to local. I had never touched it, either. It gave me a warning message. I changed it to UTC so it’s a moot point now.

Added timedate

Fedora uses the time that is set in bios (RTC)
If that is not set to UTC then the time zone may not display the time properly and some other things may be affected as well.

The default on fedora has always been to set the RTC in bios to UTC and use the time zone setting to display the local time.

The utc or local settings appears to depend on whether you have Windows installed on the system

Found this in pyanaconda/timezone.py

def time_initialize(timezone_proxy):
    """
    Try to guess if RTC uses UTC time or not, set timezone.isUtc properly and
    set system time from RTC using the UTC guess.
    Guess is done by searching for bootable ntfs devices.

    :param timezone_proxy: DBus proxy of the timezone module
    """
2 Likes

Okay, that makes sense.

I did switch to UTC anyways.

I only saw Fedora use local if Windows was present during Fedora’s install (dual-boot). It does RTC default for me single-OS.

Fresh on F41 beta:

espionage724@Spinesnap:~$ timedatectl
               Local time: Fri 2024-10-18 21:26:26 EDT
           Universal time: Sat 2024-10-19 01:26:26 UTC
                 RTC time: Sat 2024-10-19 01:26:26
                Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

I suspect any trace or lingering of Windows could also flag local time, or maybe a leftover UEFI var or your BIOS forcing local time.