我正在尝试在我的机器上配置NTP,但似乎我设置的参数没有被系统读取.下面是我的/etc/ntp.conf文件. (我应用了最基本的配置来消除其他问题)
server 10.45.68.47 server 127.0.0.1
设置完上述配置后,我通过执行以下操作重新启动ntpd进程:
service ntpd restart
然后我得到以下输出:
Shutting down ntpd: [ OK ] ntpd: Synchronizing with time server: [Failed] Starting ntpd: [ OK ]
而且,我可以在/ var / etc / messages中看到以下内容:
Apr 2 10:54:07 hsystem1a ntpd[21067]: ntpd exiting on signal 15 Apr 2 10:54:07 hsystem1a ntpdate[21537]: can't find host ntpServer1 Apr 2 10:54:07 hsystem1a ntpdate[21537]: can't find host ntpServer2 Apr 2 10:54:07 hsystem1a ntpdate[21537]: no servers can be used,exiting
因此,似乎从某处读取了ntpServer1和ntpServer2,而不是我在/etc/ntp.conf中配置的IP.
注意:为了以防万一,我在机器上完成了init 6.
UPDATE
似乎目标服务器可以访问但它没有同步.我知道如果同步成功,那么“*”应出现在服务器名称附近:
remote refid st t when poll reach delay offset jitter ============================================================================== omap 127.0.0.1 7 u 50 64 377 0.269 -21536. 4.813
解决方法
在Red Hat上,当你为ntpd重启服务时会发生一些事情.
> ntpd已停止
>运行ntpdate以设置初始时间.这是因为,默认情况下,ntpd不会将系统时间调整超过某个阈值. ntpdate使用指定的时间服务器设置一次性时间.只要ntpd未运行,您就可以使用ntpdate 10.45.68.47手动执行此操作.
> ntpd再次启动
ntpd的服务器在/etc/ntp.conf中指定,但是ntpdate从名为/ etc / ntp / step-tickers的文件中获取它们.如果你查看/etc/init.d中的ntpd脚本,你会注意到ntpdate如果有任何内容就使用这个文件(如果它是空的,则跳过ntpdate步骤).您可以将时间服务器放在这里:
server 10.45.68.47
和ntpdate将使用它们来设置初始时间.
另外,您不应将localhost作为时间服务器.使用本地服务器以及ntp pool project中的某些服务器.确保它们在地理位置上靠近您,以获得最佳效果.此外,我会重新设置默认的Red Hat配置,因为它有一些合理的默认值,即不允许其他服务器设置服务器上的时间.