我有两台虚拟机,一台是服务器 NTP,另一台用于同步。
在我的 Ubuntu 14 代码中,我使用 NTP 服务,现在我需要将我的软件升级到 Ubuntu 18,并且需要知道如何在我的 VM 上使用 NTP。
现在我看到在 Ubuntu 18 上创建了新服务systemd-timesyncd
我需要知道我应该使用这两种服务还是只使用systemd-timesyncd
?
我有两台虚拟机,一台是服务器 NTP,另一台用于同步。
在我的 Ubuntu 14 代码中,我使用 NTP 服务,现在我需要将我的软件升级到 Ubuntu 18,并且需要知道如何在我的 VM 上使用 NTP。
现在我看到在 Ubuntu 18 上创建了新服务systemd-timesyncd
我需要知道我应该使用这两种服务还是只使用systemd-timesyncd
?
timesyncd.conf(5)的手册页表明 NTP 的设置是 NTP 服务器主机名或 IP 地址的空格分隔列表。
我们的网络中有两个内部 NTP 服务器,它们都在同一个子网 (10.10.10 0/24) 上。在 Ubuntu 18.04 服务器上,如果我将 NTP 设置为 NTP="10.10.10.100 10.10.10.101",timesyncd 将不会与那些时间服务器同步。如果我只是将 NTP 设置为其中之一(NTP=10.10.10.100 或 NFS=10.10.10.101),时间会按预期同步。
有没有其他人看到同样的行为?或者这是一个应该(或已经)提交的错误?
附录:我尝试使用多条“NTP=”而不是一行。代替:
NTP="10.10.10.100 10.10.10.101"
我将其更改为:
NTP=10.10.10.100
NTP=10.10.10.101
重新启动 systemd-timesyncd 后,状态现在显示正在同步到第一个时间服务器的时间。
$ systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/systemd-timesyncd.service.d
└─disable-with-time-daemon.conf
Active: active (running) since Fri 2018-06-22 14:41:36 MDT; 3s ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 2774 (systemd-timesyn)
Status: "Synchronized to time server 10.10.10.100:123 (10.10.10.100)."
Tasks: 2 (limit: 2322)
CGroup: /system.slice/systemd-timesyncd.service
└─2774 /lib/systemd/systemd-timesyncd
Jun 22 14:41:36 bpsubuntu18.sling.com systemd[1]: Starting Network Time Synchronization...
Jun 22 14:41:36 bpsubuntu18.sling.com systemd[1]: Started Network Time Synchronization.
Jun 22 14:41:36 bpsubuntu18.sling.com systemd-timesyncd[2774]: Synchronized to time server 10.10.10.100:123 (10.10.10.100).
作为附加测试,我在两个好的时间服务器行之前添加了一个虚假的时间服务器行:
NTP=10.10.10.99
NTP=10.10.10.100
NTP=10.10.10.101
再次重新启动服务后,并使用 tcpdump 观察端口 123 的流量,我看到在未能从伪造的 NTP 服务器获取时间后,timesyncd 使用了下一个。
那么手册页不正确吗?或者不解析空格分隔的列表是一个错误?
我还想为我第一次发帖时输入 NFS 而不是 NTP 而道歉。被我正在处理的另一项任务分心...