【chrony安装】安装chrony服务作为NTP客户端(linux版)

news2024/9/24 11:31:59

文章目录

  • 前言
  • 一、介绍chrony
  • 二、安装前准备
  • 三、安装chrony
    • 3.1. 在线安装chrony
    • 3.2. 离线安装chrony
  • 四、服务端配置
    • 4.1. 配置服务端
      • 4.1.1. 服务端
      • 4.1.2. 客户端
    • 4.2. 设置开机自启
  • 五、常用命令
  • 六、安装验证
  • 七、国内常用NTP服务器
  • 总结

前言

本文章主要介绍在Centos系统,安装chrony程序,需要保持系统时钟与时钟服务器(NTP)同步,让时间保持精确;不管是内网集群还是外网集群都可参考该文档进行安装。

一、介绍chrony

Chrony是一个开源的自由软件,默认配置文件在 /etc/chrony.conf 它能保持系统时间与时间服务器(NTP)同步,让时间始终保持同步。相对同步软件来说,它速度更快、配置和依赖都更简单。

Chrony有两个程序组成,分别是:

  • chronyd:是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步;它确定计算机增减时间的比率,并对此进行补偿。
  • chronyc:提供一个用户界面,用于监控性能并进行多样化的配置;它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作。

二、安装前准备

检查是否已安装chrony

# 使用命令查看
rpm -qa |grep chrony

如果未安装,将输出 package chrony is not installed
如已经安装,请直接查看四、服务端配置

三、安装chrony

3.1. 在线安装chrony

机器本身是可以访问互联网,执行安装命令,等待安装完成

# 安装命令
sudo yum install chrony -y

3.2. 离线安装chrony

从官网下载源码包:https://download.tuxfamily.org/chrony
当前博主下载的是chrony-3.2.tar.gz包,可根据需求选择,注意:最好下载.tar.gz结尾的包。
将包传输到指定的上,执行命令,等待安装完成。

# 解压包
tar -xzvf chrony-3.2.tar.gz
# 配置安装路径
cd chrony-3.2
sudo ./configure --prefix=/usr/sbin/chronyd
# 编译和安装
sudo make && make install

四、服务端配置

4.1. 配置服务端

vi /etc/chrony.conf
该文件是配置路径,客户端与服务端配置最大的区别是server ip iburst

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 192.168.0.1 iburst


# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
allow 0.0.0.0/0

# Serve time even if not synchronized to a time source.
local stratum 10

# Specify file containing keys for NTP authentication.
#keyfile /etc/chrony.keys

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.

4.1.1. 服务端

如果通公网,建议配置为公网ntp服务器域名(参考国内的NTP服务器域名):
`server cn.pool.ntp.org iburst`


不通公网及配置为本机ip,若是ntp集群,就把集群都配置上:
`server 192.168.0.1 iburst`

注意:国内主机用国内的ntp服务器域名,海外主机用海外的ntp服务器域名;错用可能会导致网络不通,时间同步失败。

4.1.2. 客户端

客户端配置只需要将ip,修改为刚刚部署的ntp服务器ip即可,配置的数量不限制。

4.2. 设置开机自启

# 启动chrony服务
systemctl start chronyd.service
# 查看服务状态
systemctl enable chronyd.service
# 设置开机自启
systemctl status chronyd.service

五、常用命令

# 查看时间同步源:
chronyc sources -v

# 立即同步
chronyc -a makestep

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

# 设置硬件时间, 硬件时间默认为UTC:
timedatectl set-local-rtc 1

# 启用NTP时间同步:
timedatectl set-ntp yes

#校准时间服务器(use):
chronyc tracking

注意:修改配置后,需重启chrony服务,否则可能会不生效
示例: 查看 Chrony 服务是否与 NTP 服务器同步

# 执行命令
chronyc tracking

# 同步过程正常
Leap status : Normal

# 同步过程出错
Leap status: Not synchronised

# Chrony 服务未正常运行
506 Cannot talk to Daemon

六、安装验证

1.chrony服务端机器,执行命令chronyc sources -v
在这里插入图片描述
出现如上即为配置成功

2.chrony客户端机器,执行命令chronyc sources -v
在这里插入图片描述
出现如上即为配置成功

Ps.以上图片最后一行的ip(223.255.185.2、192.168.1.110)是配置的ntp服务器解析出来的ip(域名)与配置有关。

七、国内常用NTP服务器

1.可靠易用的NTP服务的虚拟集群

pool.ntp.org:提供可靠易用的NTP服务的虚拟集群
 - cn.pool.ntp.org
 - 03.cn.pool.ntp.org

2.阿里云公共NTP服务器

Unix/linux类:
 - ntp.aliyun.com
 - ntp1-7.aliyun.com
windows类:
 - time.pool.aliyun.com 

3.腾讯公共NTP服务器:

time1-5.cloud.tencent.com

4.大学NTP服务器:

s1a.time.edu.cn 北京邮电大学
s1b.time.edu.cn 清华大学
s1c.time.edu.cn 北京大学

5.国家授时中心服务器:

210.72.145.44 

总结

好的,以上就是chrony安装的步骤,欢迎大家有任何问题均可留言。
如在安装过程中遇到问题,请留言,我将汇总问题及处理办法,持续改进完善该文档,感谢大家的指导就是我不断改进的动力。

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

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

相关文章

高通Linux 交叉编译应用程序

1. 前提条件 Ubuntu 20.04 系统 高通RB3 Gen2开发板 2.下载并安装 eSDK 平台 1.从高通发布存档平台下载 eSDK。 wget https://artifacts.codelinaro.org/artifactory/qli-ci/flashable-binaries/qimpsdk/qcm6490/x86/qcom-6.6.28-QLI.1.1-Ver.1.1_qim-product-sdk-1.1.3.z…

各类元器件调试记录-E+H

一、EH压力传感器 适用型号为: Cerabar S PMC71, PMP71/75 Deltabar S FMD76/77/78, PMD70/75 Deltapilot S FMB70 调试过程:(后续补上图片) 一、湿标(湿调) 1、前提条件:罐体可以灌满和实际水箱水位高度 2、调试步骤: A、调节语…

电信网络携手大模型:AI赋能网络运维的新范式

当电信网络用上大模型,会带来怎样的体验? 过去,网络出现问题时,运维人员需要依赖经验反复排查,找到“病根”后再“对症下药”。但在大模型的加持下,问题的解决方式发生了颠覆性的改变。 如今,…

java中,怎么使用反射?

在Java中,反射(Reflection)是指在运行时能够获取类、方法、字段、构造函数等信息,并且能够在运行时动态调用类的方法、创建对象或访问字段。Java中的反射机制主要通过java.lang.reflect包中的类来实现。反射可以为开发者提供强大的…

上海泗博EtherNet/IP转PROFIBUS DP网关EPS-320IP成都地铁项目应用案例

背景: 地铁,作为城市的活力脉搏,不仅是衔接城市生活的关键纽带,更是现代城市交通体系中不可或缺的核心组成部分。因此,确保地铁的稳定运行对任何一座城市都至关重要。 上海泗博自动化,作为与成都地铁项目合…

C语言自定义类型结构体(24)

文章目录 前言一、结构体类型的声明结构体回顾结构体的特殊声明结构体的自引用 二、结构体的内存对齐对齐规则为什么存在内存对齐?修改默认对齐数 三、结构体传参四、结构体实现位段什么是位段位段的内存分配位段的跨平台问题位段的应用位段使用的注意事项 总结 前言…

安全区域边界等保测评

1.边界防护 应保证跨越边界的访问和数据流通过边界设备提供的受控接口进行通信。 [测评方法] 1)应核查在网络边界处是否部署访问控制设备;网闸和防火墙2)应核查设备配置信息是否指定端口进行跨越边界的网络通信,指定端口是否配置并启用了安全策略acl 3)应采用其他技术手…

C盘垃圾一个你不能忽视的问题!电脑小白学用这方法最简单好用!

C盘垃圾一个你不能忽视的问题!电脑小白学用这方法最简单好用!大家的电脑有没经常看到下图这样?C盘变成红色的了,这个因为是太多的垃圾文件堆积,而你又不经常清理这些垃圾。 所以就直接的导致了这些垃圾的堆积&#xff…

FloodFill算法(DFS+BFS)【上】

文章目录 FloodFill算法733. 图像渲染题目解析算法原理代码实现 200. 岛屿数量题目解析算法原理代码实现 695. 岛屿的最大面积题目解析算法原理代码实现 130. 被围绕的区域题目解析算法原理代码实现 FloodFill算法 FloodFill算法,中文名叫洪水灌溉 这些模拟一块区域…

SQL进阶技巧:火车票相邻座位预定一起可能情况查询算法 ?

目录 0 场景描述 1 数据准备 2 问题分析 2.1 分析函数法 2.2 自关联求解 3 小结 如果觉得本文对你有帮助,那么不妨也可以选择去看看我的数字化建设通关指南博客专栏 ,或许对你更有用。专栏原价99,现在活动价29.9,按照阶梯…

深圳前海港湾学校天桥下的免费停车点探寻

​最近开车去桂湾公园停车场的路上,看到有个天桥下有很多车停着,关键是这个地方离我搬砖的前海卓越写字楼还近,要是有时候桂湾公园停车位满了,停不进去的时候,是不是可以去这个天气下薅免费停车的羊毛?哈哈…

基于YOLO深度学习和百度AI接口的手势识别与控制项目

基于YOLO深度学习和百度AI接口的手势识别与控制项目 项目描述 本项目旨在开发一个手势识别与控制系统,该系统能够通过摄像头捕捉用户的手势,并通过YOLO深度学习模型或调用百度AI接口进行手势识别。识别到的手势可以用来控制计算机界面的操作&#xff0…

【OJ刷题】双指针问题4

这里是阿川的博客,祝您变得更强 ✨ 个人主页:在线OJ的阿川 💖文章专栏:OJ刷题入门到进阶 🌏代码仓库: 写在开头 现在您看到的是我的结论或想法,但在这背后凝结了大量的思考、经验和讨论 目录 1…

Google宣布所有英语语种的Gemini Live用户现可免费使用

谷歌在Pixel 9系列手机的发布会上,同步推出了Gemini Live,该服务提供了一种移动对话体验,让用户和Gemini展开自由流畅的对话。Google现在宣布,所有使用英语的Gemini Live用户,可免费使用,此前为需要Advance…

RockyLinux-软件实现RAID5

一、背景 RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)是一种将多个物理硬盘驱动器组合成单一逻辑单元的技术,目的是提高存储性能、可靠性和/或数据冗余度。虽然早期的名字中包含“独立”(Independen…

【C++】stack 和 queue 以及 容器适配器

文章目录 一、stack1.1 stack的使用1.2 stack的模拟实现 二、queue2.1 queue的使用2.2 queue的模拟实现 三、优先级队列1.优先级队列的介绍2. priority_queue的使用的使用3.模拟实现优先级队列 四、 容器适配器1.STL标准库中stack和queue的底层结构2.deque(双端对列…

Unity3D 发布后去除Development Build显示

问题描述: Build后在视野右下角看到“Development Build”白色小字 解决方法: build时不勾选Development Build项 PS: 游戏开发unity杂项知识系列:build时Development Build的作用_unity development build-CSDN博客

结构体的内存对齐

对⻬规则: 1.结构体的第⼀个成员对⻬到和结构体变量起始位置偏移量为0的地址处 2.其他成员变量要对⻬到某个数字(对⻬数)的整数倍的地址处。 对⻬数编译器默认的⼀个对⻬数与该成员变量⼤⼩的较⼩值。 但一些编译器下并没有默认对其数 3.结…

ElK 8 收集 Nginx 日志

1. 说明 elk 版本:8.15.0 2. 启个 nginx 有 nginx 可以直接使用。我这里是在之前环境下 docker-compose.yml 中启动了个 nginx: nginx:restart: alwaysimage: nginx:1.26.1ports:- "80:80"- "443:443"volumes:#- ./nginx/html:/…

探索Python轻量级数据库:TinyDB的奇妙之旅

文章目录 探索Python轻量级数据库:TinyDB的奇妙之旅背景:为何选择TinyDB?什么是TinyDB?如何安装TinyDB?简单库函数使用方法场景应用常见Bug及解决方案总结 探索Python轻量级数据库:TinyDB的奇妙之旅 背景&…