Linux基础 - NTP时间同步
🏡博客主页: Passerby_Wang的博客_CSDN博客-系统运维,云计算,Linux基础领域博主
🌐所属专栏:『Linux基础』
🌌上期文章: Linux基础 - DNS服务进阶
📰如觉得博主文章写的不错或对你有所帮助的话,还望大家多多支持呀!关注、点赞、收藏、评论。
目录
一、概述
二、原理
三、安装部署
1、Chrony介绍
2、服务端
1)安装chrony
2)修改配置文件
3)重启服务
3、客户端
1)安装chrony
2)修改配置文件
3)重启服务
四、验证
一、概述
NTP是网络时间协议(Network Time Protocol),是用来同步网络中各个计算机的时间的协议。它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms,在互联网上绝大多数的地方其精度可以达到1-50ms。它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)进行时间同步,它可以提供高精准度的时间校正,而且可以使用加密确认的方式来防止病毒的协议攻击。
在计算机的世界里,时间非常地重要,简单来说对于火箭发射这种科研活动,对时间的统一性和准确性要求就非常地高,是按照A这台计算机的时间,还是按照B这台计算机的时间?NTP就是用来解决这个问题的。
二、原理
在NTP中,定义了时间按照服务器的等级传播,按照离外部UTC源远近将所有的服务器归入不同的Stratum(层)中,例如把通过GPS(Global Positioning System,全球定位系统)取得发送标准时间的服务器叫Stratum-1的NTP服务器,而Stratum-2则从Stratum-1获取时间,Stratum-3从Stratum-2获取时间,以此类推,但Stratum层的总数限制在15以内。所有这些服务器在逻辑上形成阶梯式的架构相互连接,而Stratum-1的时间服务器是整个系统的基础,这种阶梯式的架构示意图如下图所示。

三、安装部署
1、Chrony介绍
Chrony是NTP客户端的替代品。它能以更精确的时间和更快的速度同步时钟,并且对于非全天候在线的系统非常有用。提供以下两种服务:
chronyc:Chrony 的命令行接口
chronyd:Chrony 守护进程服务
chronyd 更小、更节能,它占用更少的内存且仅当需要时它才唤醒 CPU。即使网络拥塞较长时间,它也能很好地运行。它支持 Linux 上的硬件时间戳,允许在本地网络进行极其准确的同步。
2、服务端
1)安装chrony
[root@wangwu ~]# yum -y install chrony Loaded plugins: fastestmirror, langpacksLoading mirror speeds from cached hostfileResolving Dependencies... ... ...
2)修改配置文件
主配置文件/etc/chrony.conf[root@wangwu ~]# vim /etc/chrony.confserver 0.centos.pool.ntp.org iburst #server用户客户端指向上层NTP服务器allow 192.168.0.0/24 #允许某IP或网络访问local stratum 10 #设置NTP服务器的层数量... ... ...
3)重启服务
[root@wangwu ~]# systemctl restart chronyd #重启服务[root@wangwu ~]# systemctl enable chronyd #设置开机自启[root@wangwu ~]# firewall-cmd --set-default-zone=trusted #设置防火墙允许所有访问
3、客户端
1)安装chrony
[root@zhaoliu ~]# yum -y install chrony Loaded plugins: fastestmirror, langpacksLoading mirror speeds from cached hostfileResolving Dependencies... ... ...
2)修改配置文件
主配置文件/etc/chrony.conf[root@zhaoliu ~]# vim /etc/chrony.confserver 192.168.50.128 iburst#设置与192.168.50.128服务器同步数据#iburst参数设置重启服务后尽快同步时间
3)重启服务
[root@zhaoliu ~]# systemctl restart chronyd #重启服务[root@zhaoliu ~]# systemctl enable chronyd #设置开机自启[root@zhaoliu ~]# firewall-cmd --set-default-zone=trusted #设置防火墙允许所有访问
四、验证
[root@wangwu ~]# date #服务端测试Tue Feb 14 17:09:49 CST 2023[root@zhaoliu ~]# date #服务端测试Tue Feb 14 17:09:49 CST 2023
[root@wangwu ~]# date -s "2030-1-1" #服务端将日期修改为“2030-1-1”Tue Jan 1 00:00:00 CST 2030[root@zhaoliu ~]# systemctl restart chronyd #重启客户端[root@zhaoliu ~]# date #客户端日期为“2030-1-1”Tue Jan 1 00:00:00 CST 2030
相关文章:
Linux基础 - NTP时间同步
🏡博客主页: Passerby_Wang的博客_CSDN博客-系统运维,云计算,Linux基础领域博主 🌐所属专栏:『Linux基础』 🌌上期文章: Linux基础 - DNS服务进阶 📰如觉得博主文章写的不错或对你有所帮助…...
golang 入门教程:迷你 Twitter 后端
请记住,这个项目主要是为了稍微熟悉下Golang,您可以复制架构,但该项目缺少适当的 ORM,没有适当的身份验证或授权,我完全无视中间件,也没有测试。 我将在其自己的部分中讨论所有这些问题,但重要的…...
CPP2022-30-期末模拟测试03
6-1 引用作函数形参交换两个整数 分数 5 全屏浏览题目 切换布局 作者 李廷元 单位 中国民用航空飞行学院 设计一个void类型的函数Swap,该函数有两个引用类型的参数,函数功能为实现两个整数交换的操作。 裁判测试程序样例: #include <…...
华为OD机试真题Python实现【最多等和不相交连续子序列】真题+解题思路+代码(20222023)
🔥系列专栏 华为OD机试(Python)真题目录汇总华为OD机试(JAVA)真题目录汇总华为OD机试(C++)真题目录汇总华为OD机试(JavaScript)真题目录汇总文章目录 🔥系列专栏题目输入输出示例一输入输出说明示例二输入输出说明...
二叉搜索树
1.二叉搜索树 1.1.二叉搜索树概念 二叉搜索树又称二叉排序树,它或者是一颗空树,或者是具有一下性质的二叉树。 若它的左子树不为空,则左子树上的所有节点的值都小于根节点的值。若它的右子树不为空,则右子树上的所有节点的值都…...
数据结构(三):集合、字典、哈希表
数据结构(三)一、集合(Set)1.封装一个集合类2.集合常见的操作(1)并集(2)交集(3)差集(4)子集二、字典(Map)三、…...
Linux内核驱动开发(一)
Linux内核初探 linux操作系统历史 开发模式 git 分布式管理git clone 获取git push 提交git pull 更新 邮件组 mailing list patch 内核代码组成 Makfile arch 体系系统架构相关 block 块设备 crypto 加密算法 drivers 驱动(85%) atm 通信bluet…...
TCP/IP协议二十问
TCP/IP协议二十问 1. 什么是TCP网络分层? TCP网络分层一般分为五层: 应用层(HTTP):组装数据包传输层(TCP):增加TCP头部,包含端口号等信息网络互联层(IP&am…...
常用Array数组操作方法
定义一个测试数组constplayers[{name:科比,num:24},{name:詹姆斯,num:23},{name:保罗,num:3},{name:威少,num:0},{name:杜兰特,num:35}]复制代码1、forEach参数代表含义item:遍历项index:遍历项的索引arr:数组本身Array.prototype.sx_forEach…...
【C++】set/multiset、map/multimap的使用
目录 一、关联式容器 二、set的介绍 1、接口count与容器multiset 2、接口lower_bound和upper_bound 三、map的介绍 1、接口insert 2、接口insert和operator[]和at 3、容器multimap 四、map和set相关OJ 1、前K个高频单词 2、两个数组的交集 一、关联式容器 vector、…...
vue3语法
vue3教程 //ps 这里是基本写法 一般项目不需要ref 因为需要一直return 这里是根据在不使用ts后缀 来在.vue里面写setup 如下图所示:setup setup是启动页面会自动执行的一个函数 项目里定义的所有变量,都要在setup当中 在setup定义的变量和方法,都需要r…...
对象之间的关系
目录1. 依赖2. 关联3. 聚合4. 组合Java的对象/类之间有四种关系:依赖、关联、组合、聚合。 1. 依赖 依赖(Dependency): 一个对象的功能依赖于另一个对象。 类比:人类生存依赖食物和空气 体现:被依赖者体…...
云原生时代顶流消息中间件Apache Pulsar部署实操-上
文章目录安装运行时Java版本推荐Locally Standalone集群启动验证部署分布式集群部署说明初始化集群元数据部署BookKeeper部署BrokerAdmin客户端和验证Tiered Storage(层级存储)概述支持分级存储何时使用工作原理安装 运行时Java版本推荐 Locally Standalone集群 启动 # 下载…...
Python实现基于openCV+百度智能云平台实现《1:N人脸考勤机》文章最后附带源码!
目录 一、 项目介绍 1.1 项目名称 1.2 项目简介 1.3 项目物料 1.4 技术栈 二、 项目架构 三、项目细节 3.1 环境搭建 3.2 利用opencv实现摄像头调取及相关图像的采集 3.3 利用aips上传图像和结果返回 3.4 结果优化和处理 3.5 可扩展性 3.6 遗留问题和…...
因为锁的问题,我们被扣了1万
前言 春节放假期间,一个项目上的积分接口被刷,而且不止一个人在刷,并且东西也被兑走,放假晚上被人叫起来排查问题,通过这个人的积分明细观察,基本一秒就能获取一次,远远超过了积分规则限定的次…...
【STM32笔记】低功耗模式下的RTC唤醒(非闹钟唤醒,而是采用RTC_WAKEUPTIMER)
【STM32笔记】低功耗模式下的RTC唤醒(非闹钟唤醒,而是采用RTC_WAKEUPTIMER) 前文: blog.csdn.net/weixin_53403301/article/details/128216064 【STM32笔记】HAL库低功耗模式配置(ADC唤醒无法使用、低功耗模式无法烧录…...
浏览器渲染中的相关概念
渲染 渲染流水线 构建 DOM 树 输入:HTML 文档;处理:HTML 解析器解析;输出:DOM 数据解构。 样式计算 输入:CSS 文本;处理:属性值标准化,每个节点具体样式(…...
【MySQL】数据类型
1、数据类型描述 类型类型举例整数类型TINYINT、SMALLINT、MEDIUMINT、INT(或INTEGER)、BIGINT浮点类型FLOAT、DOUBLE定点数类型DECIMAL位类型BIT日期时间类型YEAR、TIME、DATE、DATETIME、TIMESTAMP文本字符串类型CHAR、VARCHAR、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT枚举类…...
L2-037 包装机
一种自动包装机的结构如图 1 所示。首先机器中有 N 条轨道,放置了一些物品。轨道下面有一个筐。当某条轨道的按钮被按下时,活塞向左推动,将轨道尽头的一件物品推落筐中。当 0 号按钮被按下时,机械手将抓取筐顶部的一件物品&#x…...
MySQL -查询日志、二进制日志、错误日志、慢查询日志
文章目录1.错误日志2.二进制日志3.查询日志4.慢查询日志1.错误日志 错误日志是 MySOL中最重要的日志之一,它记录了当 mvsald 启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息当数据库出现任何故障导致无法正常使用时,建议…...
【网络安全】CSRF跨站请求伪造:从原理到防御全解析
前言 如果说XSS是利用了用户对网站的信任,那么CSRF(Cross-Site Request Forgery,跨站请求伪造)则是利用了网站对用户浏览器(Cookie)的信任。 1. 什么是CSRF? CSRF,全称Cross-Site Re…...
实战:在无商店的Win10企业版ThinkPad上,通过PowerShell手动部署Lenovo Vantage
1. 为什么需要手动部署Lenovo Vantage 很多ThinkPad用户可能都遇到过这样的困扰:新装的Windows 10企业版系统找不到微软应用商店,而Lenovo Vantage这个必备的管理工具又只能通过商店安装。作为一个长期使用ThinkPad的技术博主,我完全理解这种…...
一个店铺被TRO,会连累同一主体的其他店铺吗?
SellerAegis卖家守护视角下的跨境账号风险全解析在跨境电商运营中,TRO(Temporary Restraining Order,临时限制令)已经成为卖家最为警惕的法律风险之一。许多卖家在遭遇TRO时,最焦虑的问题往往不是当前店铺被冻结&#…...
终极解决:Compose Multiplatform 跨平台应用字体配置全流程指南
终极解决:Compose Multiplatform 跨平台应用字体配置全流程指南 【免费下载链接】compose-multiplatform JetBrains/compose-multiplatform: 是 JetBrains 开发的一个跨平台的 UI 工具库,基于 Kotlin 编写,可以用于开发跨平台的 Android&…...
突破CPU瓶颈:1-bit大模型推理框架3大创新解析
突破CPU瓶颈:1-bit大模型推理框架3大创新解析 【免费下载链接】BitNet 1-bit LLM 高效推理框架,支持 CPU 端快速运行。 项目地址: https://gitcode.com/GitHub_Trending/bitne/BitNet BitNet作为微软推出的1-bit大语言模型推理框架,通…...
《Linux 是怎样工作的》第 3 章 进程管理
本章完整拆解了 Linux 进程从创建 → 执行 → 结束的全生命周期,深入剖析fork()、execve()、_exit()的底层实现、内存模型与工程实践,是理解 Linux 多任务、调度与内存管理的核心基础。一、3.2 fork() 函数:进程的复制创建1. 核心定义与设计思…...
Python智能体内存管理实战:3步完成GC调优,90%开发者忽略的关键参数配置
第一章:Python智能体内存管理实战:3步完成GC调优,90%开发者忽略的关键参数配置Python的垃圾回收(GC)机制虽默认可靠,但在高吞吐、低延迟的智能体(Agent)场景中,频繁的代际…...
Arduino MCP2515轻量CAN库:确定性时序与寄存器级控制
1. 项目概述CanBusMCP2515_asukiaaa是一款面向 Arduino 平台的轻量级 CAN 总线通信库,专为驱动 Microchip MCP2515 和 MCP25625 CAN 控制器/收发器组合而设计。该库通过标准 SPI 接口与硬件交互,完整支持 CAN 2.0B 协议规范,具备标准帧&#…...
如何快速定制Windows界面:高效工作环境的终极指南
如何快速定制Windows界面:高效工作环境的终极指南 【免费下载链接】ExplorerPatcher 提升Windows操作系统下的工作环境 项目地址: https://gitcode.com/GitHub_Trending/ex/ExplorerPatcher 你是否厌倦了Windows 11的默认界面?想要恢复熟悉的操作…...
Android密钥认证踩坑实录:GtsGoogleAttestationHostTestCases模块fail排查指南
Android密钥认证深度排错指南:从GtsGoogleAttestationHostTestCases失败到系统级修复 当你深夜盯着CI系统里那片刺眼的红色——GtsGoogleAttestationHostTestCases模块测试失败时,作为Android系统工程师的你是否感到一阵窒息?这不仅仅是又一个…...
