ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

linux – Arch ntpd / ntpdate不同步时钟

2019-08-10 00:04:16  阅读:689  来源: 互联网

标签:linux ntp raspberry-pi arch-linux ntpd


运行Arch的我的raspi没有用NTPD更新时间.我在跑

 [root@fatpi ~]# cat /proc/version
 Linux version 3.10.28-1-ARCH (nobody@root-armv6-copy) (gcc version 4.8.2 20131219 (prerelease) (GCC) ) #1 PREEMPT Tue Jan 28 15:46:05 MST 2014

所以我停止服务并尝试使用ntpdate更新,但“ntpdate -sb”将无法正常工作,奇怪的是“ntpdate -qd”将输出正确的日期&偏移:


[root@fatpi ~]# ntpdate -dq time.nist.gov
31 Dec 18:09:13 ntpdate[299]: ntpdate 4.2.6p5@1.2349-o Sat Jan 11 17:42:10 UTC 2014 (1)
Looking for host time.nist.gov and service ntp
host found : nist1-chi.ustiming.org
transmit(216.171.120.36)
receive(216.171.120.36)
transmit(216.171.120.36)
receive(216.171.120.36)
transmit(216.171.120.36)
receive(216.171.120.36)
transmit(216.171.120.36)
receive(216.171.120.36)
server 216.171.120.36, port 123
stratum 1, precision -29, leap 00, trust 000
refid [ACTS], delay 0.07671, dispersion 0.00000
transmitted 4, in filter 4
reference time:    d69d8005.439fdedc  Wed, Feb  5 2014 21:29:09.264
originate timestamp: d69d800c.753a297e  Wed, Feb  5 2014 21:29:16.457
transmit timestamp:  83aa80af.2239d5e4  Wed, Dec 31 1969 18:09:19.133
filter delay:  0.07681  0.07671  0.07689  0.07681
         0.00000  0.00000  0.00000  0.00000
filter offset: 13916567 13916567 13916567 13916567
         0.000000 0.000000 0.000000 0.000000
delay 0.07671, dispersion 0.00000
offset 1391656797.298671

31 Dec 18:09:19 ntpdate[299]: step time server 216.171.120.36 offset 1391656797.298671 sec

当我的ntpd服务运行时,这是“ntpq”输出,refid不会从INIT状态改变,并且到达始终为0.


ntpq> peers
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 nist1.ny.certic .INIT.          16 u    -   64    0    0.000    0.000   0.000
 elara.mysnip.de .INIT.          16 u    -   64    0    0.000    0.000   0.000
 dsl-201-120-53- .INIT.          16 u    -   64    0    0.000    0.000   0.000
 golem.canonical .INIT.          16 u    -   64    0    0.000    0.000   0.000
ntpq> as

ind assid status  conf reach auth condition  last_event cnt
===========================================================
  1 22183  8011   yes    no  none    reject    mobilize  1
  2 22184  8011   yes    no  none    reject    mobilize  1
  3 22185  8011   yes    no  none    reject    mobilize  1
  4 22186  8011   yes    no  none    reject    mobilize  1
ntpq>

我的/var/log/ntp.log读取:(没什么有趣的)


31 Dec 18:00:18 ntpd[124]: Deferring DNS for time.nist.gov 1
31 Dec 18:00:18 ntpd[124]: Deferring DNS for 0.pool.ntp.org 1
31 Dec 18:00:18 ntpd[124]: Deferring DNS for 1.pool.ntp.org 1
31 Dec 18:00:18 ntpd[124]: Deferring DNS for 2.pool.ntp.org 1
31 Dec 18:00:18 ntpd[124]: Deferring DNS for ntp.ubuntu.com 1
31 Dec 18:00:18 ntpd[132]: signal_no_reset: signal 17 had flags 4000000
31 Dec 18:00:20 ntpd[132]: host name not found: time.nist.gov
31 Dec 18:00:20 ntpd[132]: host name not found: 0.pool.ntp.org
31 Dec 18:00:20 ntpd[132]: host name not found: 1.pool.ntp.org
31 Dec 18:00:20 ntpd[132]: host name not found: 2.pool.ntp.org
31 Dec 18:00:20 ntpd[132]: host name not found: ntp.ubuntu.com
31 Dec 18:00:30 ntpd[124]: Listen normally on 2 eth0 192.168.0.104 UDP 123
31 Dec 18:00:30 ntpd[124]: peers refreshed
31 Dec 18:00:30 ntpd[124]: new interface(s) found: waking up resolver
31 Dec 18:00:32 ntpd[132]: DNS time.nist.gov -> 216.171.120.36
31 Dec 18:00:32 ntpd[132]: DNS 0.pool.ntp.org -> 201.120.27.5
31 Dec 18:00:32 ntpd[132]: DNS 1.pool.ntp.org -> 201.120.27.5
31 Dec 18:00:32 ntpd[132]: DNS 2.pool.ntp.org -> 201.120.27.5
31 Dec 18:00:32 ntpd[132]: DNS ntp.ubuntu.com -> 91.189.94.4

我已经改变了我的ntp.conf文件数十亿次,目前:


server time.nist.gov iburst
server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server ntp.ubuntu.com iburst

restrict default noquery nopeer restrict 127.0.0.1 restrict ::1

driftfile /var/lib/ntp/ntp.drift logfile /var/log/ntp.log

我的ntpd.service文件读取:


[Unit]
Description=Network Time Service
After=network.target nss-lookup.target

[Service]
Type=forking
PrivateTmp=true
PIDFile=/var/run/ntpd.pid
ExecStart=/usr/bin/ntpd -g -u ntp:ntp -p /var/run/ntpd.pid
Restart=always

[Install]
WantedBy=multi-user.target

我也安装了假hwclock但没有帮助(应该没关系,因为我的ntpd使用-g运行)

ntpd -q输出:


[root@fatpi ~]# ntpd -qd
ntpd 4.2.6p5@1.2349-o Sat Jan 11 17:42:09 UTC 2014 (1)
31 Dec 18:02:42 ntpd[296]: proto: precision = 1.000 usec
event at 0 0.0.0.0 c01d 0d kern kernel time sync enabled
Finished Parsing!!
31 Dec 18:02:42 ntpd[296]: ntp_io: estimated max descriptors: 1024, initial socket boundary: 16
31 Dec 18:02:42 ntpd[296]: Listen and drop on 0 v4wildcard 0.0.0.0 UDP 123
31 Dec 18:02:42 ntpd[296]: Listen normally on 1 lo 127.0.0.1 UDP 123
restrict: op 1 addr 127.0.0.1 mask 255.255.255.255 mflags 00003000 flags 00000001
31 Dec 18:02:42 ntpd[296]: Listen normally on 2 eth0 192.168.0.104 UDP 123
restrict: op 1 addr 192.168.0.104 mask 255.255.255.255 mflags 00003000 flags 00000001
31 Dec 18:02:42 ntpd[296]: peers refreshed
31 Dec 18:02:42 ntpd[296]: Listening on routing socket on fd #19 for interface updates
restrict: op 1 addr 0.0.0.0 mask 0.0.0.0 mflags 00000000 flags 00000050
restrict: op 1 addr :: mask 0.0.0.0 mflags 00000000 flags 00000050
restrict: op 1 addr 127.0.0.1 mask 255.255.255.255 mflags 00000000 flags 00000000
31 Dec 18:02:42 ntpd[296]: restrict: error in address '::1' on line 12. Ignoring...
key_expire: at 0 associd 21204
peer_clear: at 0 next 1 associd 21204 refid INIT
event at 0 64.250.229.100 8011 81 mobilize assoc 21204
newpeer: 192.168.0.104->64.250.229.100 mode 3 vers 4 poll 6 10 flags 0x101 0x1 ttl 0 key 00000000
key_expire: at 0 associd 21205
peer_clear: at 0 next 2 associd 21205 refid INIT
event at 0 132.248.81.123 8011 81 mobilize assoc 21205
newpeer: 192.168.0.104->132.248.81.123 mode 3 vers 4 poll 6 10 flags 0x101 0x1 ttl 0 key 00000000
key_expire: at 0 associd 21206
peer_clear: at 0 next 3 associd 21206 refid INIT
event at 0 91.189.94.4 8011 81 mobilize assoc 21206
newpeer: 192.168.0.104->91.189.94.4 mode 3 vers 4 poll 6 10 flags 0x101 0x1 ttl 0 key 00000000
event at 0 0.0.0.0 c016 06 restart
event at 0 0.0.0.0 c012 02 freq_set kernel 0.000 PPM
event at 0 0.0.0.0 c011 01 freq_not_set
transmit: at 1 192.168.0.104->64.250.229.100 mode 3 len 48
auth_agekeys: at 1 keys 1 expired 0
transmit: at 2 192.168.0.104->132.248.81.123 mode 3 len 48
transmit: at 3 192.168.0.104->91.189.94.4 mode 3 len 48
transmit: at 66 192.168.0.104->64.250.229.100 mode 3 len 48
transmit: at 68 192.168.0.104->132.248.81.123 mode 3 len 48
transmit: at 69 192.168.0.104->91.189.94.4 mode 3 len 48
transmit: at 131 192.168.0.104->64.250.229.100 mode 3 len 48
transmit: at 133 192.168.0.104->91.189.94.4 mode 3 len 48
transmit: at 135 192.168.0.104->132.248.81.123 mode 3 len 48
transmit: at 197 192.168.0.104->91.189.94.4 mode 3 len 48
transmit: at 197 192.168.0.104->64.250.229.100 mode 3 len 48
transmit: at 202 192.168.0.104->132.248.81.123 mode 3 len 48
transmit: at 262 192.168.0.104->91.189.94.4 mode 3 len 48
transmit: at 263 192.168.0.104->64.250.229.100 mode 3 len 48
transmit: at 267 192.168.0.104->132.248.81.123 mode 3 len 48
transmit: at 327 192.168.0.104->91.189.94.4 mode 3 len 48
transmit: at 327 192.168.0.104->64.250.229.100 mode 3 len 48
transmit: at 331 192.168.0.104->132.248.81.123 mode 3 len 48
^C31 Dec 18:09:12 ntpd[296]: ntpd exiting on signal 2
[root@fatpi ~]#

但! ntpdate -buv WORKS !!!!


[root@fatpi ~]# ntpdate -bv ntp.ubuntu.com
31 Dec 18:11:18 ntpdate[299]: ntpdate 4.2.6p5@1.2349-o Sat Jan 11 17:42:10 UTC 2014 (1)
31 Dec 18:11:27 ntpdate[299]: no server suitable for synchronization found
[root@fatpi ~]# date
Wed Dec 31 18:11:52 CST 1969
[root@fatpi ~]# ntpdate -buv ntp.ubuntu.com
31 Dec 18:11:54 ntpdate[303]: ntpdate 4.2.6p5@1.2349-o Sat Jan 11 17:42:10 UTC 2014 (1)
 6 Feb 14:31:00 ntpdate[303]: step time server 91.189.94.4 offset 1391717938.800589 sec
[root@fatpi ~]# date
Thu Feb  6 14:31:02 CST 2014

我想让它工作的是ntpdate的-u,它使用非特权端口.我读了ntpdate的-u选项的手册页,它说-d总是使用这个选项,这就是为什么我在我的ntpdate -dq命令上看到发送/接收/发送/接收 – 好吧,大NOPE!

我想端口udp 123转发是我现在应该检查的?

解决方法:

看起来NTP太远不同步(1391656797.298671)并且需要强制同步.

在ntpdate中使用-d选项时,它只是调试.它经历了所有步骤,但实际上并没有强制同步.

执行以下操作之一:

ntpd -q

要么

ntpdate -buv ntp.ubuntu.com

标签:linux,ntp,raspberry-pi,arch-linux,ntpd
来源: https://codeday.me/bug/20190809/1634280.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有