当前位置: 首页 > news >正文

Linux(openEuler、CentOS8)基于chrony企业内网NTP服务器搭建实验

一、知识点

  1. chrony 是由 守护进程 chronyd 以及 命令行工具 chronyc 组成的
    在这里插入图片描述
    在这里插入图片描述

  2. chronyd 在后台静默运行并通过 123 端口与时间服务器定时同步时间,默认的配置文件是 /etc/chrony.conf

  3. chronyc 通过 323 端口与 chronyd 交互,可监控 chronyd 的性能并在运行时更改各种操作参数,chronyc 通过下面的方式访问 chronyd(默认情况下,chronyc 先通过 Unix 域 socket 访问 chronyd,默认的 socket 文件是 /var/run/chrony/chronyd.sock, 如果失败-常见的原因是使用非 root 用户运行 chronyc ),将尝试通过 127.0.0.1 访问 chronyd

  4. chrony默认情况下,不允许任何客户端访问,这意味着chronyd主要作为NTP客户端运行。当使用allow指令时(allow all允许所有<#如果写成0.0.0.0/24实验不通过>;allow 192.168.59.0/24 允许网段),chronyd将既是其服务器的客户端,又是其他客户端的服务器

  5. chronyd常用命令说明

    1. 查看时间同步源状态: chronyc sourcestats -v【-v是列出详细,可以不要】

    2. 强制同步时间:chronyc makestep【这个命令会立即尝试将系统时间设置为 NTP 服务器的当前时间。请注意,这可能会导致系统时间突然跳跃,这可能会影响正在运行的服务或应用程序。】

    3. 启用NTP时间同步: timedatectl set-ntp yes【默认是启用的,timedatectl命令可以查看状态】

    4. 查看客户端连接情况【服务端执行】:chronyc clients

    5. 列出ntp状态详细:timedatectl

    6. 下面timedatectl说明中有详细介绍
      设置硬件时间

      1. 硬件时间默认为UTC: timedatectl set-local-rtc 1/0
      2. 设置硬件时钟为本地时间:timedatectl set-local-rtc 1
      3. 设置硬件时钟为UTC时间:timedatectl set-local-rtc 0
      4. 启用NTP时间同步: timedatectl set-ntp yes
      5. 开启 NTP:timedatectl set-ntp true/flase
      6. 查询和调试 NTP: chronyc tracking查询和调试 NTP(网络时间协议)客户端的状态
    7. hwclock -w用于将系统时间写入到硬件时钟(也称为RTC,即实时时钟)中。在Linux系统中,硬件时钟是一个独立的时钟,它可以在系统关闭时继续运行,并且可以在系统启动时用来初始化系统时间。

更多相关知识,请访问:https://blog.csdn.net/cuichongxin/article/details/123178318

本实验与上文链接不一致的地方:

  1. 查询和调试 NTP: chronyc tracking查询和调试 NTP(网络时间协议)客户端的状态
  2. chronyc makestep #强制同步
  3. hwclock -w#用于将系统时间写入到硬件时钟
  4. allow all #如果写成0.0.0.0/24实验不通过

二、实验步骤

  1. 创建两台ntp服务器
序号服务器名称IP备注
1ntp1192.168.200.123
2ntp2192.168.200.124

在这里插入图片描述

  1. 安装chrony
dnf install -y chrony

在这里插入图片描述
我安装openEuler时,选择的是server安装,自带chrony

  1. 修改配置文件
 vim /etc/chrony.conf

修改内容如下(192.168.200.1是淘宝买的硬件授时服务器)

#pool pool.ntp.org iburst
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (https://www.pool.ntp.org/join.html).
#pool pool.ntp.org iburst
pool 192.168.200.1# Allow NTP client access from local network.
#allow 192.168.0.0/16
allow all #如果写成0.0.0.0/24实验不通过
# Serve time even if not synchronized to a time source.
#local stratum 10
local stratum 10

在这里插入图片描述

在这里插入图片描述

  1. 检测
systemctl restart chronyd
chronyc sourcestats -v

在这里插入图片描述

三、手动修改服务器1时间,用服务器2去同步错误时间

  1. 测试之前先临时关闭两台服务器selinux和firewalld,功能测试通过后再针对实际情况开启
clear
setenforce 0
systemctl stop firewalld

在这里插入图片描述

  1. 手动调整服务器1时间
timedatectl set-ntp false
timedatectl set-time "2023-12-12 00:00:00"
hwclock -w #用于将系统时间写入到硬件时钟
timedatectl set-ntp true
date #查看时间
timedatectl #查看详细时间

在这里插入图片描述

  1. 进入服务器2,从服务器1同步错误时间
chronyc makestep #强制同步
hwclock -w #用于将系统时间写入到硬件时钟(这个必须有,否则date查询和timedatectl查询不一致,时间并没改)
date #查看时间
timedatectl #查看详细时间

备用1:检查同步源状态

chronyc sourcestats -v #查看时间同步源状态

备用2:查询和调试 NTP

chronyc tracking #查询和调试 NTP

在这里插入图片描述

  1. 从这段 chronyc tracking 的输出中,我们可以分析以下关于 NTP(网络时间协议)同步状态的信息:

  2. Reference ID : C0A8C87B (192.168.200.123)
    这是 NTP 服务器的标识符,通常对应于服务器的 IP 地址。在这里,服务器 IP 地址是 192.168.200.123。

  3. Stratum : 11
    这表示 NTP 服务器的层次。Stratum 1 是最高级的服务器,直接与原子钟相连。Stratum 11 表示这个服务器从其他服务器获取时间,且距离原始时间源已经相当远。

  4. Ref time (UTC) : Mon Dec 11 16:09:09 2023
    这是 NTP 服务器的当前参考时间,以协调世界时(UTC)表示。

  5. System time : 1010.213012695 seconds fast of NTP time
    这表明系统时间比 NTP 服务器时间快了约 1010 秒。

  6. Last offset : -0.000107685 seconds
    上一次时间同步时,系统时间与 NTP 服务器时间的偏差是负的,即系统时间略慢于 NTP 时间。

  7. RMS offset : 2199082.750000000 seconds
    RMS(均方根)偏移量表示系统时间与 NTP 服务器时间的平均差异。这个值非常大,表明系统时间和 NTP 服务器时间之间存在显著的差异。

  8. Frequency : 0.359 ppm fast
    这表示系统时钟频率比 NTP 服务器时钟频率快了 0.359 百万分之一(ppm)。

  9. Residual freq : -0.077 ppm
    剩余频率误差,表示在最近一次时间同步后,系统时钟与 NTP 服务器时钟之间的频率差异。

  10. Skew : 0.955 ppm
    Skew 表示系统时钟与 NTP 服务器时钟之间的频率偏差率。

  11. Root delay : 0.000785275 seconds
    从系统到 NTP 时间源的总延迟。

  12. Root dispersion : 0.000260121 seconds
    NTP 服务器的不确定度。

  13. Update interval : 194.2 seconds
    系统从 NTP 服务器获取更新的时间间隔。

  14. Leap status : Normal
    Leap 秒状态。Normal 表示没有 leap 秒事件正在进行或计划。

从上述数据中,我们可以看到系统时间与 NTP 服务器时间之间存在较大的偏差(约 1010 秒),并且 RMS 偏移量也非常大。这可能是由于网络问题、NTP 服务器配置问题或系统时钟问题导致的。为了解决这个问题,你可能需要检查网络连接、NTP 服务器的状态,以及系统时钟设置。同时,RMS 偏移量这么大也可能是因为刚开始同步,还未稳定,所以多等待一段时间并观察数据的变化也是很有帮助的。

  1. 进入服务器1,查看clients
chronyc clients

在这里插入图片描述

  1. 使用windows客户端同步时间
    在这里插入图片描述
  2. 再次进入服务器1,查看clients
chronyc clients

在这里插入图片描述
8. 分别开启两台服务器的防火墙

setenforce 1
systemctl start firewalld
firewall-cmd --zone=public --add-port=123/udp --permanent
firewall-cmd --reload
firewall-cmd --list-ports

相关文章:

Linux(openEuler、CentOS8)基于chrony企业内网NTP服务器搭建实验

一、知识点 chrony 是由 守护进程 chronyd 以及 命令行工具 chronyc 组成的 chronyd 在后台静默运行并通过 123 端口与时间服务器定时同步时间&#xff0c;默认的配置文件是 /etc/chrony.conf chronyc 通过 323 端口与 chronyd 交互&#xff0c;可监控 chronyd 的性能并在运…...

前端开发框架Vue

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl Vue概述 Vue.js&#xff08;简称Vue&#xff09;是由尤雨溪&#xff08;Evan You&#xff09;创建并维护的一款开源前端开发框架。Vue以其轻量级、易上手和高度灵活的特点&…...

Vue2中引入ElementUI

Vue中引入ElementUI 目录 Vue中引入ElementUI安装 全库导入main.py使用 仅引入样式文件main.py使用 安装 官方文档 npm i element-ui -S全库导入 main.py import ElementUI from element-ui;Vue.use(ElementUI)使用 <template> <div class"main">&l…...

华中科技大学雷达站部署

一&#xff1a;项目地址 GitHub - HUSTLYRM/HUST_Radar_2023: 华中科技大学狼牙战队 RoboMaster 2023赛季 雷达站 二&#xff1a;安装依赖 2.1创建虚拟环境 首先是程序是基于python3.8完成&#xff0c;所以创建虚拟环境的时候&#xff0c;选择3.8的虚拟环境 conda create -…...

小程序引入 Vant Weapp 极简教程

一切以 Vant Weapp 官方文档 为准 Vant Weapp 官方文档 - 快速入手 1. 安装nodejs 前往官网下载安装即可 nodejs官网 安装好后 在命令行&#xff08;winr&#xff0c;输入cmd&#xff09;输入 node -v若显示版本信息&#xff0c;即为安装成功 2. 在 小程序根目录 命令行/终端…...

labview技术交流-将时间字符串转换成时间格式

应用场景 我们在数据库中设计了datetime类型的字段&#xff0c;比如字段名就叫“保存时间”&#xff0c;当我们使用labview将表中数据读取出来后datetime类型的数据是以字符串的格式显示的。而我们想计算两条数据“保存时间”的间隔时间时&#xff0c;用字符串类型自然是没法计…...

算法提高之迷宫问题

算法提高之迷宫问题 核心思想&#xff1a;最短路问题 从(n-1,n-1)开始bfs 往前走一个就存入pre数组 之后再遍历pre数组输出 #include <iostream>#include <cstring>#include <algorithm>using namespace std;const int N 1010,M N*N;#define x first#def…...

泛微E9开发 通过点击按钮来复制选择的明细行

泛微E9开发 通过点击按钮来复制选择的明细行 复制明细行功能背景展示效果实现方法 复制明细行 功能背景 用户可以通过“复制明细”按钮来实现新增选择的明细行&#xff0c;并且新增明细行的数据跟选择的数据完全一样&#xff0c;具体操作如下图所示&#xff1a; 手动新增明细…...

sqlalchemy 分表实现方案

1.需求及场景概述 现有系统中因历史数据量过大&#xff0c;产生了将历史数据进行按月存储的要求&#xff0c;系统和数据库交互使用的是sqlalchemy&#xff0c;假设系统的原来的历史记录表&#xff08;record&#xff09;如下&#xff1a; 为了将历史数据按月分表存储&#xff0…...

QML进阶(十五) QML各种标准元素的用法

文章目录 文本图像控件TextTextInputTextFieldTextEditTextAreaImage按钮控件ButtonRadioButtonCheckBoxComboBox进度控制控件ProgressBarSlider...

【工具使用】快速实现Makefile模板的方法

一&#xff0c;简介 我们在使用gcc编译程序时&#xff0c;常常需要自己实现Makefile&#xff0c;那么如何快速的实现Makefile呢&#xff1f;这里把一些基本的操作整理成模板&#xff0c;供参考。 二&#xff0c;模板介绍 功能包含基本功能编译exe&#xff08;包括调用其他算…...

Linux-信号执行

1. 信号什么时候被处理 当进程从内核态返回到用户态的时候&#xff0c;进行信号的检测和处理 什么内核态&#xff0c;什么又是用户态呢&#xff1f; 当进程在CPU上运行时&#xff0c;内核态&#xff1a;允许进程访问操作系统的代码和数据&#xff0c;用户态&#xff1a;进程只…...

在线听歌播放器 梨花带雨网页音乐播放器 网页音乐在线听 源码

最新梨花带雨网页音乐播放器二开优化修复美化版全开源版本源码下载 下 载 地 址 &#xff1a; runruncode.com/php/19749.html 梨花带雨播放器基于thinkphp6开发的XPlayerHTML5网页播放器前台控制面板,支持多音乐平台音乐解析。二开内容&#xff1a;修复播放器接口问题&am…...

免费生成证件照

分享分享&#xff0c;免费福利&#xff0c;欢迎大家来体验&#xff01;&#xff01;&#xff01; 不知道你是不是会时不时有使用证件照需求&#xff0c;这一个小程序&#xff0c;可以生成常见尺寸的证件照&#xff0c;全程免费&#xff0c;有需要的可以动动小手&#xff0c;体…...

深入探索数据链路层:网络通信的基石

⭐小白苦学IT的博客主页⭐ ⭐初学者必看&#xff1a;Linux操作系统入门⭐ ⭐代码仓库&#xff1a;Linux代码仓库⭐ ❤关注我一起讨论和学习Linux系统❤ 前言 在网络通信的宏伟世界中&#xff0c;数据链路层扮演着至关重要的角色。它位于物理层和网络层之间&#xff0c;不仅直接…...

STM32使用L9110驱动电机自制小风扇

1.1 介绍&#xff1a; 该电机控制模块采用L9110电机控制芯片。该芯片具有两个TTL/CMOS兼容输入端子&#xff0c;并具有抗干扰特性&#xff1a;具有高电流驱动能力&#xff0c;两个输出端子可直接驱动直流电机&#xff0c;每个输出端口可提供750800mA动态电流&#xff0c;其峰值…...

C语言——队列的实现

队列按照先进先出&#xff08;FIFO&#xff0c;First In First Out&#xff09;的原则管理数据。这意味着最先进入队列的元素会被最先移出&#xff0c;类似于排队等候服务的情况。队列通常有两个主要操作&#xff1a;入队&#xff08;enqueue&#xff09;&#xff0c;将元素添加…...

15-LINUX--线程的创建与同步

一.线程 1.线程的概念 线程是进程内部的一条执行序列或执行路径&#xff0c;一个进程可以包含多条线程。 2.线程的三种实现方式 ◼ 内核级线程&#xff1a;由内核创建&#xff0c;创建开销大&#xff0c;内核能感知到线程的存在 ◼ 用户级线程&#xff1a;线程的创建有用户空…...

【退役之重学Java】如何解决消息持续积压等问题

一、将读写数据库等耗时的操作&#xff0c;从消费者逻辑中抽取出来&#xff0c;专门部署机器去完成这部分操作。...

Linux下的SPI通信

SPI通信 一. 1.SPI简介: SPI 是一种高速,全双工,同步串行总线。 SPI 有主从俩种模式通常由一个主设备和一个或者多个从设备组从。SPI不支持多主机。 SPI通信至少需要四根线,分别是 MISO(主设备数据输入,从设备输出),MOSI (主设数据输出从设备输入),SCLK(时钟信号),CS/SS…...

Unity3D中Gfx.WaitForPresent优化方案

前言 在Unity中&#xff0c;Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染&#xff08;即CPU被阻塞&#xff09;&#xff0c;这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案&#xff1a; 对惹&#xff0c;这里有一个游戏开发交流小组&…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

【JVM】- 内存结构

引言 JVM&#xff1a;Java Virtual Machine 定义&#xff1a;Java虚拟机&#xff0c;Java二进制字节码的运行环境好处&#xff1a; 一次编写&#xff0c;到处运行自动内存管理&#xff0c;垃圾回收的功能数组下标越界检查&#xff08;会抛异常&#xff0c;不会覆盖到其他代码…...

【磁盘】每天掌握一个Linux命令 - iostat

目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat&#xff08;I/O Statistics&#xff09;是Linux系统下用于监视系统输入输出设备和CPU使…...

【项目实战】通过多模态+LangGraph实现PPT生成助手

PPT自动生成系统 基于LangGraph的PPT自动生成系统&#xff0c;可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析&#xff1a;自动解析Markdown文档结构PPT模板分析&#xff1a;分析PPT模板的布局和风格智能布局决策&#xff1a;匹配内容与合适的PPT布局自动…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中&#xff0c;高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司&#xff0c;近期做出了一个重大技术决策&#xff1a;弃用长期使用的 Nginx&#xff0c;转而采用其内部开发…...

鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南

1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;使用DevEco Studio作为开发工具&#xff0c;采用Java语言实现&#xff0c;包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列&#xff0c;以便知晓哪些列包含有价值的数据&#xff0c;…...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...