NTP 程序通过以下文件配置/etc/ntp.conf或/etc/xntp.conf文件,具体取决于你使用的 Linux 发行版。我不会详细介绍如何配置 NTP。相反,我将只介绍基础知识。
一个基本的 ntp.conf 文件示例看起来像这样
# --- GENERAL CONFIGURATION --- server aaa.bbb.ccc.ddd server 127.127.1.0 fudge 127.127.1.0 stratum 10 # Drift file. driftfile /etc/ntp/drift |
最基本的 ntp.conf 文件将简单地列出 2 个服务器,一个是要与之同步的服务器,以及它自身的伪 IP 地址(在本例中为 127.127.1.0)。伪 IP 用于在发生网络问题或远程 NTP 服务器宕机时的情况。NTP 将与自身同步,直到它可以再次开始与远程服务器同步。建议您列出至少 2 个可以与之同步的远程服务器。一个将充当主服务器,另一个充当备份服务器。
您还应该列出一个漂移文件的位置。随着时间的推移,NTP 将“学习”系统时钟的误差率并自动进行调整。
restrict 选项可以用于更好地控制和保护 NTP 可以做什么,以及谁可以影响它。例如
# Prohibit general access to this service. restrict default ignore # Permit systems on this network to synchronize with this # time service. But not modify our time. restrict aaa.bbb.ccc.ddd nomodify # Allow the following unrestricted access to ntpd restrict aaa.bbb.ccc.ddd restrict 127.0.0.1 |
NTP 会缓慢地校正您的系统时间。请耐心等待!一个简单的测试是在睡觉前将您的系统时钟更改 10 分钟,然后在起床时检查它。时间应该会是正确的。
许多人认为,与其运行 NTP 守护程序,不如设置一个 cron 任务来定期运行 ntpdate 命令。使用这种方法有两个主要的缺点。
第一个缺点是 ntpdate 使用“暴力”方法更改时间。因此,如果您的计算机时间偏差了 5 分钟,它会立即纠正它。在某些环境中,如果时间发生剧烈变化,这可能会导致问题。例如,如果您正在使用时间敏感的安全软件,您可能会不小心终止某些人的访问。NTP 守护程序会缓慢地更改时间,以避免引起这种中断。
另一个原因是 NTP 守护程序可以配置为尝试学习您的系统的时间漂移,然后自动进行调整。