Sus*_*nne 4 linux ntp network-interface
我使用的是 Raspberry Pi 3,需要在重启系统后通过 ntp 更新时间。
它应该通过带有 dhcp 的 wifi 更新。通常它可以工作,但同步需要大约。半小时,我不明白为什么。
当我想手动启动 ntp 服务时
>>sudo /etc/init.d/ntp restart
Run Code Online (Sandbox Code Playgroud)
它说“好的”,但系统什么也不做——错误的时间仍然在 RTC 上。
你有什么想法,可能是什么问题?
另一个信息是,Pi 以只读模式运行……但是如果它在没有写访问权限的情况下无法工作,它在半小时后不会更新,不是吗?
更多细节:
在这里完成我的问题是ntp.conf:
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help
Driftfile /var/lib/ntp/ntp.drift
Statistics loopstats peerstats clockstats
Filegen loopstats file loopstats type day enable
Filegen peerstats file peerstats type day enable
Filegen clockstats file clockstats type day enable
...
Server 0.de.pool.ntp.org iburst
Server 1.de.pool.ntp.org iburst
Server 2.de.pool.ntp.org iburst
Server 3.de.pool.ntp.org iburst
Server 127.127.1.0 #local clock
Fudge 127.127.1.0 stratum 10
...
Run Code Online (Sandbox Code Playgroud)
扩展我对我的项目的解释。我想将 Pi 用作 NTP 服务器。第一个问题是 RTC 在重启后或当 Pi 关闭时“跑掉”——尤其是在更长的时间内。这就是为什么我有这样的想法,Pi 应该在第一次设置 RTC 时成为 NTP 客户端,然后 Pi 需要成为设备的 NTP 服务器,该服务器通过以太网与 Pi 连接。所以我通过 Wifi 连接 Pi 以获取当前时间。正如我已经说过的一般它有效,但需要太多时间。
然后我想用我之前发布的这个命令手动进行同步。我的想法是将其作为 cronjob 来执行,但还有下一个问题:1. Pi 忽略了该命令;2. cronjob 也被忽略,或者在重启后删除。
但我想一步一步来,我想解决的第一个问题是减少同步时间。
我希望你现在对我的情况有一个更好的了解......
您需要更多详细信息吗?
新信息:01.02.2018
好的,所以我现在有了我想要的解决方案,但是有一种我不明白的行为。配置正确。但是,我使用板载 WiFi 通过我在 ntp.conf 中配置的 NTP 服务器同步系统时间。我使用以太网(有线 LAN)作为连接到 RPi 的有线设备的 NTP 服务器。这里的IP设置:
WLAN (DHCP): 192.168.1.x
Ethernet (static): 192.168.10.10
Run Code Online (Sandbox Code Playgroud)
我将两个接口放在不同的网络中,否则只有一个连接可以工作 - 但实际上为什么呢?这是主要问题,为什么同步需要这么长时间。当我用本地时钟注释掉这一行时
Server 127.127.1.0
Run Code Online (Sandbox Code Playgroud)
然后网络上的同步立即生效......为什么会发生?
rpi 没有 RTC,因此它总是在 1970 年 1 月 1 日启动 - 将服务器和 NTP 缓慢增量同步的时间更长;所以默认情况下 NTP 不会开始正常运行,直到 NTP 和系统之间的差异得到纠正。
我将添加到您的ntp.conf文件作为第一行(它必须是第一行):
tinker panic 0
Run Code Online (Sandbox Code Playgroud)
建议对 VM和iOT 设备使用此设置。
tinker panic - 以秒为单位指定恐慌阈值,默认为 1000 秒。如果设置为零,则紧急状况检查将被禁用,并且任何值的时钟偏移都将被接受。
我也会考虑购买 RTC,因为它很便宜,特别是如果您打算在没有 Internet 连接的情况下进行项目。查看hwclock 无法打开 rtc 文件
| 归档时间: |
|
| 查看次数: |
8771 次 |
| 最近记录: |