[SOLVED] Program to Synchronize Time?

I have several computers running EndeavourOS. I have noticed that the “computer time” is not synchronizing with the time shown by my various radio-controlled clocks (which are all within one second of each other).

I am sure that there must be a program that I can install which will automatically synchronize the “computer time” with the NIST time. I just don’t know which program to install.

Can anyone help me?

Thanks!

Lawrence

Did some research on this, and I found this (which might help you):

https://wiki.archlinux.org/index.php/OpenNTPD

It is a bit of a read, but it’s worth it.

1 Like

Thanks for this information. I read the entire article but when I tried to install OpenNTPD with yay, I got a message that OpenNTPD is in conflict with NTP and did I want to remove NTP? I selected No until I find out some more information, especially if removing NTP and replacing it with OpenNTPD will damage my installation in any way.

Thanks for any further information.

Lawrence

Here’s another link you might try. It worked on my latest EndeavourOS install.

Scroll down the page to: “In newer Linux distributions that ship with Systemd”.

https://www.tecmint.com/synchronize-time-with-ntp-in-linux/

1 Like

I’m using KDE/Plasma and I just use the date and time widget in my task bar to “Set date and time automatically”. Now my computer and atomic clock match. Simple solution if you are using KDE. I’m sure other desktops have a similar widget.

1 Like

@lhb1142

https://wiki.archlinux.org/index.php/System_time

1 Like

Thanks to everyone who has written back to me. These articles and suggestions were very informative.

I have solved the problem on one of the computers running EndeavourOS, the one I use for experimentation.

If anyone is interested, here is what I did.

I installed OpenNTPD, removing NTP. I rebooted and nothing (the time showing on my computer) changed. The time was still wrong.

I looked for any OpenNTPD program I could adjust and, finding none, I went into systemd-manager, scrolled down, and there it was. It was not active.

In the terminal, I typed sudo systemctl enable --now openntpd and that activated it (both indicators were green).

But, after rebooting, again nothing had changed.

I went back into systemd-manager and looked more closely at the parameters of openntpd and I saw that there was a message stating that this program was in conflict with systemd-timesyncd.service.

So I typed sudo systemctl enable --now systemd-timesyncd.service and, after rebooting, the time was now set correctly. Hooray!

But I didn’t stop here. I went back into systemd-manager and, scrolling down, I saw that only the left indicator of OpenNTPD was green; the right indicator was red (off).

And the conflict message was still present.

At that point (and remember, the time showing was now correct), I decided to remove OpenNTPD and replace the original NTP program.

I did so and, after rebooting (again!), I went back into systemd-manager and scrolled down to ntp. I saw that both indicators were red (off) and there was the same message that ntp was in conflict with sudo systemctl enable --now systemd-timesyncd.service.

The time was still set correctly - and there is remains (at least so far).

So there I stood. I decided that that was it. I have left ntp “off” (both indicators red) and systemd-timesyncd active (both indicators green). The time is now apparently synchronized with NIST.

I’ll see what happens with this computer over the next few days and, if the time stays synchronized, I’ll effect this sudo systemctl enable --now systemd-timesyncd.service on all of my EndeavourOS computers.

It appears that this one command is the only thing you need to enter in order to ensure that your computer’s time is set to the standard time set by your local time service.

Simple!

Thanks again to all for pointing me in the right direction.

Lawrence

1 Like

After I wrote the above post, I took a look back in systemd-manager and saw that there was a program called systemd-time-wait-sync - this is just above the systemd-timesyncd module.

For good measure I decided to activate this also even though I don’t know what it actually does.

For some reason it would not activate using the sudo systemctl enable --now systemd-time-wait-sync.service so I went back to the Terminal and entered sudo systemd-manager, scrolled down to that systemd-time-wait-sync module, turned the switch to “on,” clicked on Start, and then clicked on Save.

I rebooted and saw that this program was now fully activated too.

Ant the time shown on the computer is still correct.

This all seems like “going around Robin Hood’s barn” just to keep the computer’s clock reading the correct time but at least it all appears to be working.

I hope that all of this has been of at least some use to people using EndeavourOS.

Lawrence

1 Like

Thanks for the detective work and effort you put into this mystery. I did learn something. If I ever have a time sync problem, ask Lawrence. :slight_smile:

1 Like

Are you using a dual boot system?

1 Like

https://wiki.archlinux.org/index.php/Network_Time_Protocol_daemon
NTP is good to here, you must decide on your setup and device in use what you want to set up…

Different hardware-related things will sooner or later lead to differences in actual time, depending on the duration of the non-correction and hardware characteristics, from a few seconds to several minutes a month. The NTP daemon synchronizes the current time of the client using a time server so that the client always has the most current time possible.

it is already installed only needs to enable the service:

sudo systemctl enable ntpd.service

1 Like

No. EndeavourOS is the only operating system on the computers on which I have it installed.

Lawrence

Dear Joe,

If you are correct, then I think that the NTP daemon ought to be enabled as part of the initial installation.

When I looked up systemd-timesyncd in the systemd-manager, it showed a message that there was a conflict with NTP. So I have disabled NTP in favor of systemd-timesyncd as well as systemd-time-wait-sync.

I can only say that, so far, these two programs have kept my computer almost exactly (within one second) on time.

I have to mention that EndeavourOS is the very first GNU/Linux distribution I have tried (and I have tried over twenty of them) that did not automatically, “out of the box,” keep the computer’s time synchronized with NIST (in the United States).

I think that this might be something you and the other developers ought to look at when you have the time. (Just a suggestion.)

However, though it was initially confusing, it turned out to be fairly easy to correct the situation. I have used the following commands:

yay -S systemd-manager (in case you don’t already have it installed)

sudo systemctl enable --now systemd-timesyncd.service

sudo systemctl enable --now systemd-time-wait-sync.service

This has taken care of it all and I now have those two systemd modules activated on all of my EndeavourOS computers. All of them are now synchronized with NIST.

Of course only time (no pun intended) will tell as to whether the computers will remain synchronized with the NIST atomic clock.

Lawrence

1 Like

Archlinux do not configure this as default we do not have done this too, but you are completely right, this must be enabled per default, if you provide a complete desktop.
I just have done a testing install with this feature enabled here.

We will have this up from next ISO per default.

2 Likes