所以最近我尝试使用timedatectl
命令将我的系统时间与 NTP 时间服务器同步,但出现了此错误:
Failed to set ntp : NTP is not supported
我搜索了网络并发现 systemd-timesyncd 可能被屏蔽了,所以我尝试取消屏蔽但它被删除了:
$ sudo systemctl unmask systemd-timesyncd
Removed /etc/systemd/system/systemd-timesyncd.service
我再次搜索网络,看到有人提到如果启用了 ntp 服务,则无法取消屏蔽 systemd-timesyncd。我尝试再次安装 systemd-timesyncd,这次 ntp 服务被屏蔽了。我是这方面的新手,谁能向我解释一下为什么会发生这种情况?为什么进程可以自行屏蔽而无需用户干预?
答案1
systemd-timesyncd 实现 SNTP 而不是 NTP。如果您只需要偶尔获得正确的时间,那么这个可能有用。
但是如果您确实想要 ntp,您需要的是 ntpd、chrony 或 ntpsec,而不是 systemd-timesyncd。
systemd-timesyncd 实际上会干扰 ntpd 的正常运行,因此如果您想要 ntpd,则必须将其屏蔽和/或删除。