NTP不支持。

在Ubuntu 20.04中,我发现由于以下错误,我无法更改set-ntp
# timedatectl set-ntp true
Failed to set ntp: NTP not supported

有什么办法可以修复这个问题吗?
更新:
看起来 `systemd-timesyncd` 在启动命令上出现了故障。
$ systemctl status systemd-timesyncd
● systemd-timesyncd.service
     Loaded: masked (Reason: Unit systemd-timesyncd.service is masked.)
     Active: inactive (dead)
$ sudo systemctl start systemd-timesyncd
Failed to start systemd-timesyncd.service: Unit systemd-timesyncd.service is masked.

解决方案
通过使用命令sudo timedatectl set-ntp yes,问题现已解决。

通常情况下,这将启用/禁用systemd-timesyncd(在我的新的干净的Focal虚拟机中运行良好)。您可以尝试检查此报告并将其添加到问题systemctl status systemd-timesyncd中。 - Christian Ehrhardt
@ChristianEhrhardt:请查看更新的帖子。 - mahmood
如果你在Amazon Linux上遇到这个问题(消息),timesyncd在那里是不可用的。使用chrony或其他方法。 - x-yuri
2个回答

这对我在Ubuntu上有效:
安装NTP:
apt install systemd-timesyncd

激活NTP:
timedatectl set-ntp true

1OP指出systemd-timesyncd已经安装,但未配置启动。这样做对解决问题没有任何有用的作用。 - Paul Gear
1@PaulGear 我的系统没有安装systemd-timesyncd,但表现与OP所描述的一样。OP并未说明它是否已经安装。就目前而言,这个答案解决了我的问题。我不明白为什么systemd-timesyncd被识别为被屏蔽,而实际上该软件包并未安装。 - MariusSiuram
...并让我说声谢谢,并评论一下,一个安装了Raspbian 11 bullseye的树莓派按照您的步骤解决了它的问题 :) 以防万一将来有人遇到树莓派的问题而来到这里。 - MariusSiuram
这也帮助了我们,我认为这个应该是被接受的答案。 - morhekil
+1 这也适用于树莓派。 - user000001

你的 systemd-timesyncd 服务被 屏蔽 了。这意味着它无法启动,也无法被启用。要撤销此操作,你需要运行以下命令:
systemctl unmask systemd-timesyncd.service

然后您可以启用并启动该服务:
systemctl enable systemd-timesyncd.service
systemctl start systemd-timesyncd.service

然而,很不太可能你的系统自己陷入了这种状态。也许你按照一些指令来启用了更全面功能的NTP服务器,比如chronyd或者ntpd?在你继续上述方法之前,我建议你再次确认它们是否已经安装好了。
systemctl status chronyd.service
systemctl status ntp.service

如果以上任何一条命令返回正常状态,我建议您将systemd-timesyncd禁用并屏蔽。