openEuler 22.03 (LTS-SP1)服务器用ntpd同步GPS时间服务器的案例

本文记录了openEuler 22.03 (LTS-SP1)的二级时间服务器用chronyd不能自动同步GPS时间服务器,改用ntpd同步GPS时间服务器成功的案例

一、环境简述

1、本环境中有两台GPS一级时间服务器,IP如下:

192.168.188.66

192.168.188.74

2、有一台openeuler系统的服务器拟作为网络中的二级时间服务器对全网进行授时

系统版本:

[root@localhost ~]# cat /etc/os-release 
NAME="openEuler"
VERSION="22.03 (LTS-SP1)"
ID="openEuler"
VERSION_ID="22.03"
PRETTY_NAME="openEuler 22.03 (LTS-SP1)"
ANSI_COLOR="0;31"

 IP地址:192.168.168.33

二、问题现象

1、使用chronyd进行时间服务器同步设置

配置如下:

[root@localhost ~]# egrep -v "^#|^$" /etc/chrony.conf
server 192.168.188.66 iburst
server 192.168.188.74 iburst
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
allow 192.0.0.0/8
local stratum 10
keyfile /etc/chrony.keys
logdir /var/log/chrony
log measurements statistics tracking
2、启动服务
[root@localhost ~]# systemctl start chronyd
[root@localhost ~]# systemctl status chronyd
● chronyd.service - NTP client/serverLoaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)Active: active (running) since Fri 2024-06-21 20:37:38 CST; 5s agoDocs: man:chronyd(8)man:chrony.conf(5)Process: 392366 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS)Main PID: 392368 (chronyd)Tasks: 1 (limit: 2469658)Memory: 360.0KCGroup: /system.slice/chronyd.service└─ 392368 /usr/sbin/chronydJun 21 20:37:38 irmsogg1733 systemd[1]: Starting NTP client/server...
Jun 21 20:37:38 irmsogg1733 chronyd[392368]: chronyd version 4.1 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASY>
Jun 21 20:37:38 irmsogg1733 chronyd[392368]: Initial frequency -46.668 ppm
Jun 21 20:37:38 irmsogg1733 systemd[1]: Started NTP client/server.

服务正常启动

3、检查服务器同步情况
[root@localhost ~]# chronyc sourcestats -v .- Number of sample points in measurement set./    .- Number of residual runs with same sign.|    /    .- Length of measurement set (time).|   |    /      .- Est. clock freq error (ppm).|   |   |      /           .- Est. error in freq.|   |   |     |           /         .- Est. offset.|   |   |     |          |          |   On the -.|   |   |     |          |          |   samples. \|   |   |     |          |          |             |
Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev
==============================================================================
192.168.188.66               0   0     0     +0.000   2000.000     +0ns  4000ms
192.168.188.74               0   0     0     +0.000   2000.000     +0ns  4000ms
[root@localhost ~]# chronyc sources -v     .-- Source mode  '^' = server, '=' = peer, '#' = local clock./ .- Source state '*' = current best, '+' = combined, '-' = not combined,
| /             'x' = may be in error, '~' = too variable, '?' = unusable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured offset,
||                                \     |          |  zzzz = estimated error.
||                                 |    |           \
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^? 192.168.188.66                 0   8     0     -     +0ns[   +0ns] +/-    0ns
^? 192.168.188.74                 0   8     0     -     +0ns[   +0ns] +/-    0ns

经长时间观察,服务器前面始终为?,发现无法完成自动同步将服务器状态转为“*”或“-”。

4、检查一级服务器授时能力
[root@localhost ~]# chronyc activity -v
200 OK
2 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address
[root@localhost ~]# chronyc tracking -v
Reference ID    : 7F7F0101 ()
Stratum         : 10
Ref time (UTC)  : Fri Jun 21 11:31:11 2024
System time     : 0.000000004 seconds slow of NTP time
Last offset     : +0.000000000 seconds
RMS offset      : 0.000000000 seconds
Frequency       : 44.979 ppm slow
Residual freq   : +0.000 ppm
Skew            : 0.000 ppm
Root delay      : 0.000000000 seconds
Root dispersion : 0.000000000 seconds
Update interval : 0.0 seconds
Leap status     : Normal

 可以看到两个时间服务器源是在线的,但tracking信息不正常

5、手动同步时间测试
[root@localhost ~]# ntpdate 192.168.188.66    
21 Jun 19:19:21 ntpdate[391367]: adjust time server 192.168.188.66 offset +0.017640 sec
[root@localhost ~]# ntpdate 192.168.188.74
21 Jun 19:19:34 ntpdate[391368]: adjust time server 192.168.188.74 offset +0.012333 sec
[root@localhost ~]# chronyc -a makestep
200 OK

 手动测试一级时间服务器时间同步正常,授时端口也正常,看来chronyd与该GPS时间服务器同步存在什么问题。

三、问题处理

1、卸载chronyd

考虑到一级GPS时间服务器又能正常授时,chronyd无法完成与一级GPS时间服务器的自动同步,于是卸载chronyd,改用ntpd进行尝试(ntpd和chronyd都能启动ntp时间服务器,是有冲突的,最好只保留一个)。

[root@localhost ~]# yum remove chrony        
Dependencies resolved.
=======================================================================================================================================Package                     Architecture             Version                             Repository                              Size
=======================================================================================================================================
Removing:chrony                      x86_64                   4.1-3.oe2203sp1                     @openEuler2203SP1LTS                   435 k
Removing unused dependencies:libedit                     x86_64                   3.1-29.oe2203sp1                    @openEuler2203SP1LTS                   232 ktimedatex                   x86_64                   0.6-3.oe2203sp1                     @openEuler2203SP1LTS                    52 kTransaction Summary
=======================================================================================================================================
Remove  3 PackagesFreed space: 718 k
Is this ok [y/N]: y
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                               1/1 Running scriptlet: chrony-4.1-3.oe2203sp1.x86_64                                                                                 1/1 Running scriptlet: chrony-4.1-3.oe2203sp1.x86_64                                                                                 1/3 
Removed /etc/systemd/system/multi-user.target.wants/chronyd.service.Erasing          : chrony-4.1-3.oe2203sp1.x86_64                                                                                 1/3 
warning: /etc/chrony.conf saved as /etc/chrony.conf.rpmsaveRunning scriptlet: chrony-4.1-3.oe2203sp1.x86_64                                                                                 1/3 Erasing          : libedit-3.1-29.oe2203sp1.x86_64                                                                               2/3 Running scriptlet: timedatex-0.6-3.oe2203sp1.x86_64                                                                              3/3 
Unit /etc/systemd/system/timedatex.service is masked, ignoring.Erasing          : timedatex-0.6-3.oe2203sp1.x86_64                                                                              3/3 Running scriptlet: timedatex-0.6-3.oe2203sp1.x86_64                                                                              3/3 Verifying        : chrony-4.1-3.oe2203sp1.x86_64                                                                                 1/3 Verifying        : libedit-3.1-29.oe2203sp1.x86_64                                                                               2/3 Verifying        : timedatex-0.6-3.oe2203sp1.x86_64                                                                              3/3 Removed:chrony-4.1-3.oe2203sp1.x86_64              libedit-3.1-29.oe2203sp1.x86_64              timedatex-0.6-3.oe2203sp1.x86_64             Complete!
2、安装ntpd
[root@localhost ~] # yum install ntp
Last metadata expiration check: 0:51:16 ago on Fri 21 Jun 2024 07:47:25 PM CST.
Dependencies resolved.
=======================================================================================================================================Package                    Architecture            Version                                 Repository                            Size
=======================================================================================================================================
Installing:ntp                        x86_64                  4.2.8p15-7.oe2203sp1                    openEuler2203SP1LTS                  619 k
Installing dependencies:autogen                    x86_64                  5.18.16-3.oe2203sp1                     openEuler2203SP1LTS                  469 klibedit                    x86_64                  3.1-29.oe2203sp1                        openEuler2203SP1LTS                   92 kntp-help                   noarch                  4.2.8p15-7.oe2203sp1                    openEuler2203SP1LTS                  1.3 M
Installing weak dependencies:ntpstat                    noarch                  0.6-4.oe2203sp1                         openEuler2203SP1LTS                   11 ktimedatex                  x86_64                  0.6-3.oe2203sp1                         openEuler2203SP1LTS                   29 kTransaction Summary
=======================================================================================================================================
Install  6 PackagesTotal download size: 2.4 M
Installed size: 5.3 M
Is this ok [y/N]: y
Downloading Packages:
(1/6): libedit-3.1-29.oe2203sp1.x86_64.rpm                                                              19 MB/s |  92 kB     00:00    
(2/6): autogen-5.18.16-3.oe2203sp1.x86_64.rpm                                                           29 MB/s | 469 kB     00:00    
(3/6): ntpstat-0.6-4.oe2203sp1.noarch.rpm                                                              9.3 MB/s |  11 kB     00:00    
(4/6): ntp-4.2.8p15-7.oe2203sp1.x86_64.rpm                                                              24 MB/s | 619 kB     00:00    
(5/6): timedatex-0.6-3.oe2203sp1.x86_64.rpm                                                            3.7 MB/s |  29 kB     00:00    
(6/6): ntp-help-4.2.8p15-7.oe2203sp1.noarch.rpm                                                         42 MB/s | 1.3 MB     00:00    
---------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                   63 MB/s | 2.4 MB     00:00     
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transactionPreparing        :                                                                                                               1/1 Running scriptlet: timedatex-0.6-3.oe2203sp1.x86_64                                                                              1/6 Installing       : timedatex-0.6-3.oe2203sp1.x86_64                                                                              1/6 Running scriptlet: timedatex-0.6-3.oe2203sp1.x86_64                                                                              1/6 
Unit /etc/systemd/system/timedatex.service is masked, ignoring.Installing       : ntp-help-4.2.8p15-7.oe2203sp1.noarch                                                                          2/6 Installing       : libedit-3.1-29.oe2203sp1.x86_64                                                                               3/6 Installing       : autogen-5.18.16-3.oe2203sp1.x86_64                                                                            4/6 Installing       : ntpstat-0.6-4.oe2203sp1.noarch                                                                                5/6 Running scriptlet: ntp-4.2.8p15-7.oe2203sp1.x86_64                                                                               6/6 Installing       : ntp-4.2.8p15-7.oe2203sp1.x86_64                                                                               6/6 Running scriptlet: ntp-4.2.8p15-7.oe2203sp1.x86_64                                                                               6/6 Verifying        : autogen-5.18.16-3.oe2203sp1.x86_64                                                                            1/6 Verifying        : libedit-3.1-29.oe2203sp1.x86_64                                                                               2/6 Verifying        : ntp-4.2.8p15-7.oe2203sp1.x86_64                                                                               3/6 Verifying        : ntp-help-4.2.8p15-7.oe2203sp1.noarch                                                                          4/6 Verifying        : ntpstat-0.6-4.oe2203sp1.noarch                                                                                5/6 Verifying        : timedatex-0.6-3.oe2203sp1.x86_64                                                                              6/6 Installed:autogen-5.18.16-3.oe2203sp1.x86_64             libedit-3.1-29.oe2203sp1.x86_64           ntp-4.2.8p15-7.oe2203sp1.x86_64           ntp-help-4.2.8p15-7.oe2203sp1.noarch           ntpstat-0.6-4.oe2203sp1.noarch            timedatex-0.6-3.oe2203sp1.x86_64          Complete!
3、配置ntpd
[root@localhost chrony]# egrep -v "^#|^$" /etc/ntp.conf   
driftfile /var/lib/ntp/drift
restrict default nomodify notrap nopeer noepeer noquery
restrict source nomodify notrap noepeer noquery
restrict 127.0.0.1 
restrict ::1
server 192.168.188.66 iburst
server 192.168.188.74 iburst
tos maxclock 5
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
 4、启动ntpd
[root@localhost chrony]# systemctl start ntpd
5、查看服务状态
[root@localhost chrony]# systemctl status ntpd
● ntpd.service - Network Time ServiceLoaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)Active: active (running) since Fri 2024-06-21 20:40:16 CST; 2min 38s agoMain PID: 392489 (ntpd)Tasks: 2 (limit: 2469658)Memory: 1.6MCGroup: /system.slice/ntpd.service└─ 392489 /usr/sbin/ntpd -u ntp:ntp -gJun 21 20:40:16 localhost ntpd[392489]: Listen and drop on 1 v4wildcard 0.0.0.0:123
Jun 21 20:40:16 localhost ntpd[392489]: Listen normally on 2 lo 127.0.0.1:123
Jun 21 20:40:16 localhost ntpd[392489]: Listen normally on 3 bond0 192.168.168.33:123
Jun 21 20:40:16 localhost ntpd[392489]: Listen normally on 4 lo [::1]:123
Jun 21 20:40:16 localhost ntpd[392489]: Listening on routing socket on fd #23 for interface updates
Jun 21 20:40:16 localhost ntpd[392489]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
Jun 21 20:40:16 localhost ntpd[392489]: kernel reports TIME_ERROR: 0x41: Clock Unsynchronized
Jun 21 20:40:16 localhost systemd[1]: Started Network Time Service.
 6、检查时间同步情况
[root@localhost chrony]# ntpq -premote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+192.168.188.66   .GPS.            1 u   11   64   77    1.705  +15.730  12.199
*192.168.188.74   .GPS.            1 u    8   64   77    1.670  +16.038  12.284

 发现ntpd能够正常跟踪一级GPS时间服务器,相关数据显示正常。

7、使能ntpd让其开机启动
[root@localhost chrony]# systemctl enable ntpd
Created symlink /etc/systemd/system/multi-user.target.wants/ntpd.service → /usr/lib/systemd/system/ntpd.service.
8、通过网内其它主机进行时间同步测试

其它主机chronyd将时间服务器设置为二级服务器192.168.168.33进行同步测试

[root@localhost2 ~]# chronyc sources -v.-- Source mode  '^' = server, '=' = peer, '#' = local clock./ .- Source state '*' = current best, '+' = combined, '-' = not combined,
| /             'x' = may be in error, '~' = too variable, '?' = unusable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured offset,
||                                \     |          |  zzzz = estimated error.
||                                 |    |           \
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* 192.168.168.33                  2   6   377    17  -4658us[-7129us] +/-   11ms

可以看到,能正确获取到时间,且显示二级服务器192.168.168.33处于第二层。

9、检查时间获取情况
[root@localhost2 ~]#  chronyc tracking -v
Reference ID    : 0AE31121 (192.168.168.33)
Stratum         : 3
Ref time (UTC)  : Fri Jun 21 14:13:29 2024
System time     : 0.000004623 seconds fast of NTP time
Last offset     : +0.000003086 seconds
RMS offset      : 0.000103144 seconds
Frequency       : 16.338 ppm slow
Residual freq   : +0.001 ppm
Skew            : 0.072 ppm
Root delay      : 0.001930163 seconds
Root dispersion : 0.007009792 seconds
Update interval : 64.7 seconds
Leap status     : Normal
10、用时间同步检查工具检查

可以看到 二级服务器192.168.168.33是从一级时间服务器192.168.188.74获取的时间,与“ntpq -p”检查结果一致,确认二级时间服务器自动同步GPS时间服务器并进行分发的配置ok,运行完成正常。

附:本文中相关配置详解见《ntpd和chronyd时间服务器配置样例及详解》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/31749.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

go-admin-ui开源后台管理系统华为云部署

1.华为云开通8000与9527端口 2.编译 编译成功 3.发布到远程服务器 4.登陆华为云终端 5.安装Nginx 6.查看服务启动状态 7.添加网站 添加与修改配置www-data 改为 www 自定义日志输出格式 添加网站配置文件go_admin_ui.conf 添加如下内容: location 下的root指向网站文件夹 修…

Java用文件流mask文本文件某些特定字段

思路 在Java中,如果你想要掩码(mask)文本文件中的某些特定字段,你可以按照以下步骤进行: 读取文本文件内容。找到并识别需要掩码的字段。用特定的掩码字符(如星号*)替换这些字段。将修改后的内…

一个自定义流程的平台

脚本语言使用的是C#,当用户发布一个新的流程时,会把C#的脚本编译成dll,然后添加到微服务中,因为有了硬编译,所以执行速度是非常快的。逻辑脚本支持调试,可以断点和逐行调试。平台提供了调试工具&#xff0c…

python测试工程师 之 unittest框架总结

unittest 学习目标unittest 框架的基本使⽤⽅法(组成)断⾔的使⽤ (让程序⾃动的判断预期结果和实际结果是否相符)参数化(多个测试数据, 测试代码写⼀份 传参)⽣成测试报告 复习pythonunittest 框架的介绍核⼼要素(组成)1. TestCase 测试⽤例, 这个测试⽤例是 unittest 的组成部…

【windows】字体安装手册

windows字体安装手册 1 下载字体文件 百度搜索XXX字体ttf文件进行下载 附:宋体gb2312下载地址: https://www.downza.cn/soft/7780.html 2 字体安装 1.搜索字体 2.将下载的ttf文件拖拽添加 3.关闭办公软件重新打开后,outlook、word、…

Windows环境下使用VisualGDB进行Linux项目开发

1.新建项目-打开文件下的新建项目菜单 2.工程项目类型配置 3.Linux机器选择设置 4.设置代码位置 5.编译选项设置 6.调试环境设置

数据结构【二叉树】

前言 我们在前面学习了使用数组来实现二叉树,但是数组实现二叉树仅适用于完全二叉树(非完全二叉树会有空间浪费),所以我们本章讲解的是链式二叉树,但由于学习二叉树的操作需要有一颗树,才能学习相关的基本…

20240620日志:TAS-MRAM的电阻开放分析

TAS-MRAM的电阻开放缺陷分析 1 MRAM介绍开放电阻的缺陷 1 MRAM介绍 MRAM(Magnetic random access memory),磁随机存储器,利用磁性材料的状态来存储数据。MRAM的存储单元通常由一个磁隧道结( M T J 茅台酒 MTJ^{茅台酒} MTJ茅台酒&#xff0c…

【大模型驯化-Prompt】企业级大模型Prompt调试技巧与batch批量调用方法

【大模型驯化-Prompt】企业级大模型Prompt调试技巧 本次修炼方法请往下查看 🌈 欢迎莅临我的博客个人主页 👈这里是我工作、学习、实践 IT领域、真诚分享 踩坑集合,智慧小天地! 🎇 免费获取相关内容文档关注&#x…

舒适佩戴,享受沉浸式音乐体验,西圣AVA2耳机体验

平时不管是听音乐,还是打电话,戴上一副耳机都可以让我们获得更好的隐私性,并且在公共场所,比如办公室、车厢里,也可以获得属于自己的空间。现在市面上耳机的选择非常多,音质、续航和佩戴的舒适度是我们选择…

接口自动化测试实战:测试用例也能自动生成

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 作为测试,你可能会对以下场景感到似曾相识:开发改好的 BUG 反复横跳&…

智慧园区数字化能源云平台的多元化应用场景,您知道哪些?

智慧园区数字化能源云平台的多元化应用场景,您知道哪些? 智慧园区数字化能源云平台,作为新一代信息技术与传统能源管理深度融合的典范,正引领着产业园区向智慧化、绿色化转型的浪潮。该平台依托于大数据、云计算及人工智能等前沿…

跨境多账号需知:指纹浏览器需要用独立IP吗?

指纹浏览器也成为反检测浏览器,旨在安全管理多个账户。在跨境多账号中,多个账号容易引发网站怀疑并最终导致大量账户被暂停,使用反检测浏览器的主要目的是通过创建新的浏览器指纹来隐藏用户的真实浏览器指纹。 但浏览器指纹并不是网站关注的唯…

解决Few-shot问题的两大方法:元学习与微调

基于元学习(Meta-Learning)的方法: Few-shot问题或称为Few-shot学习是希望能通过少量的标注数据实现对图像的分类,是元学习(Meta-Learning)的一种。 Few-shot学习,不是为了学习、识别训练集上的数据,泛化…

Java中将文件转换为Base64编码的字节码

在Java中,将文件转换为Base64编码的字节码通常涉及以下步骤: 读取文件内容到字节数组。使用java.util.Base64类对字节数组进行编码。 下面是一个简单的Java示例代码,演示如何实现这个过程: import java.io.File; import java.io…

Ascend C Add算子样例代码详解

核函数定义 核函数(Kernel Function)是Ascend C算子设备侧实现的入口。在核函数中,需要为在一个核上执行的代码规定要进行的数据访问和计算操作,当核函数被调用时,多个核都执行相同的核函数代码,具有相同的…

L55--- 257.二叉树的所有路径(深搜)---Java版

1.题目描述 2.思路 (1)因为是求二叉树的所有路径 (2)然后是带固定格式的 所以我们要把每个节点的整数数值换成字符串数值 (3)首先先考虑根节点,也就是要满足节点不为空 返回递归的形式dfs(根节…

AI通用大模型不及垂直大模型?各有各的好

​​​​​​​AI时代,通用大模型和垂直大模型,两者孰优孰劣,一直众说纷纭。 通用大模型,聚焦基础层,如ChatGPT、百度文心一言,科大讯飞星火大模型等,都归属通用大模型,它们可以解答…

51单片机STC89C52RC——4.1 独立按键(数码管显示按键值)

目录 目录 目的 一,STC单片机模块 二,矩阵按键模块 2.1 针脚定义 ​编辑 2.2 矩阵按键位置 2.3 如何理解按键按下后针脚的高低电平 2.3.1 错误理解1 2.3.2 错误理解2 2.3.3 正确判定按下的是那个按键的逻辑 2.3.4 判定按键按下的依次扫描程…

游戏中插入音效

一、背景音乐 准备:素材音乐 方法: 1、方法1: (1) 将背景音乐 bgAudio 拖放到Hierarchy面板 (2) 选中 bgAudio,勾选开始运行就播放、循环播放。调节音量(volume) 2、方法2: (1) Create Empty&#x…