linux时间同步方案

yum install chrony -y  # 配置 chrony 使用国内服务器
sed -i 's/^pool.*pool.ntp.org/#&/' /etc/chrony.conf
cat >> /etc/chrony.conf <<EOF
server ntp.aliyun.com iburst
server ntp.tencent.com iburst
server ntp.ntsc.ac.cn iburst
server time1.cloud.tencent.com iburst
EOFsystemctl restart chronyd
chronyc sources -v 
chronyc makestep 

在选择 NTP(网络时间协议)方案时,需要根据系统版本、性能需求、部署场景等因素综合判断。

以下是 ntpdntpdatechrony 的对比分析,帮助你选择最合适的方案:

一、方案对比表

维度

ntpd

ntpdate

chrony

类型

守护进程(长期运行)

一次性同步工具(非守护进程)

守护进程(新一代时间同步工具)

系统兼容性

传统 Linux 系统(如 CentOS 6、Ubuntu 14.04 及更早)

需配合 ntpd 使用,无独立功能

主流 Linux 系统(CentOS 7+/RHEL 7+、Ubuntu 16.04+ 及以上)

同步方式

渐进式微调(避免时间跳跃)

一次性强制修改系统时间

支持快速同步和渐进式微调

时间偏差处理

超过 128 秒时拒绝同步

强制同步(无论偏差大小)

自动处理大偏差(先快速同步,再渐进微调)

资源占用

较高(需持续计算时钟频率)

低(仅单次执行)

低(优化算法,适合低功耗设备)

功能特性

支持 NTP 协议全功能(分层时钟、认证等)

仅用于时间同步,无其他功能

支持 NTP/SNTP 协议,内置ntpdate功能,支持 IPv6、加密认证等

配置复杂度

配置文件(/etc/ntp.conf)较复杂,需手动管理服务器列表

无配置文件,直接调用命令

配置文件(/etc/chrony.conf)更简洁,自动发现可用服务器

动态适应性

较差(需重启服务修改配置)

强(支持运行时动态调整配置)

适用场景

传统数据中心、对时间精度要求极高的场景(如金融、电信)

仅用于初始时间校正或临时同步

通用场景(云服务器、容器环境、嵌入式设备),尤其适合时间波动大或网络不稳定的环境

二、方案选择建议

1. 优先选择 chrony 的场景
  • 现代 Linux 系统:如 CentOS 7+/RHEL 7+、Ubuntu 16.04+、Debian 9+ 等,系统默认已预装 chrony,无需额外安装。
  • 资源有限的环境:如虚拟机、容器(Docker/Kubernetes)、树莓派等,chrony 的轻量级设计更节省 CPU 和内存。
  • 网络不稳定或高延迟场景chrony 支持快速同步大时间偏差,并通过缓存历史时间数据减少对 NTP 服务器的依赖,适合网络波动大的环境(如移动网络、云服务器)。
  • 需要简化运维的场景chrony 自动处理初始同步和持续微调,无需手动调用 ntpdate,配置文件更易读(示例如下):ini
# /etc/chrony.conf 示例server ntp.aliyun.com iburst  # 使用阿里云 NTP 服务器
server ntp.tencent.com iburst
allow 192.168.0.0/16          # 允许本地子网同步时间
local stratum 10              # 本地时钟作为备用时间源
2. 继续使用 ntpd 的场景
  • 传统系统或特殊需求:如 CentOS 6、RHEL 6 等旧系统,或对时间精度要求极高(如亚毫秒级)的专业场景(如金融交易、工业控制),ntpd 的成熟算法更可靠。
  • 需要兼容旧版 NTP 协议:部分老旧设备仅支持 NTP v3 协议,ntpd 兼容性更好。
  • 已存在的 ntpd 集群:若现有架构已基于 ntpd 搭建(如分层时钟架构),迁移成本较高时可继续使用。
3. ntpdate 的定位
  • 仅作为辅助工具
    ntpdate 本身无法独立实现时间同步,必须配合 ntpdchrony 使用,仅用于以下场景:
    • ntpd 启动前强制校正大时间偏差(如系统时间错误导致 ntpd 无法同步)。
    • 临时手动同步时间(如调试时快速更新时间)。
  • 现代系统中逐渐被淘汰chrony 已内置类似功能(通过 chronyd 服务自动处理),无需单独调用 ntpdate

三、迁移建议:从 ntpd 切换到 chrony

若你正在使用 ntpd,且系统支持 chrony,建议按以下步骤迁移:

  1. 停止 ntpd 服务
systemctl stop ntpd
systemctl disable ntpd
  1. 安装 chrony(若未预装):
    • CentOS/RHEL:
yum install chrony -y
    • Ubuntu/Debian:
apt-get install chrony -y

  1. 配置 chrony
    编辑 /etc/chrony.conf,替换 NTP 服务器为国内地址(如阿里云、腾讯云),示例:
server ntp.aliyun.com iburst
server ntp.tencentyun.com iburst
  1. 启动服务并验证
systemctl start chronyd
systemctl enable chronyd
chronyc sources -v  # 查看时间源状态
timedatectl         # 检查系统时间是否同步

四、总结

  • 最优选择chrony,适用于 90% 以上的通用场景,尤其是现代 Linux 系统和资源受限环境。
  • 传统场景保留ntpd,仅在旧系统或对时间精度有极高要求的专业场景中使用。
  • 避免单独使用ntpdate,仅作为临时辅助工具,不建议作为长期方案。


 

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

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

相关文章

C语言笔记(鹏哥)上课板书+课件汇总(KMP算法的动态规划简易处理+字符函数和字符串函数)

一、目录 kmp动态规划简易处理next数组字符函数与字符串函数 一、目录二、引言C语⾔标准库中提供了⼀系列库函数 三、字符分类函数&#xff08;字符相关的函数&#xff09;推荐一个网站 四、字符转换函数&#xff08;字符相关的函数&#xff09;五、strlen&#xff08;字符串相…

Java大模型开发入门 (13/15):拥抱官方标准 - Spring AI框架入门与实践

前言 到目前为止&#xff0c;我们整个系列的旅程都是在功能强大的LangChain4j框架上构建的。它就像一个装备齐全的“瑞士军刀”&#xff0c;为我们提供了构建RAG和Agents所需的所有底层和高层工具。 然而&#xff0c;在Java企业级开发的世界里&#xff0c;有一个名字我们永远…

Github搜索案例

今天的内容是这个案例的实现&#xff0c;以及其中涉及到的内容&#xff0c;需要全部掌握&#xff0c;比如ref&#xff0c;受控组件&#xff0c;props在组件之中的传递&#xff0c;以及Pubsub包的使用这些前端React框架有关的内容。现在进入正题 1.github搜索案例&#xff08;a…

Vue3学习(生命周期,hooks,axios的简单讲解)

一&#xff0c;前言 继续努力&#xff0c;南方见。 二&#xff0c;生命周期 1.对生命周期的理解 例如&#xff1a;人的生命周期&#xff0c;出生&#xff0c;经历&#xff0c;死亡 组件的话就是&#xff0c;创建&#xff0c;挂载&#xff0c;更新&#xff0c;销毁。***在特…

Pytorch实战四 基于 VGG net 搭建一个串联的神经网络结构

系列文章目录 文章目录 系列文章目录前言一、VGG类的搭建1.源码2.初始化类2.1 初始化函数2.2 前向传播函数 forward(self,x) 二、卷积补充卷积 前言 对于标准的 VGG net 输入图像的尺寸是 24 x 24,进行 32 维的下采样之后得到一个 7 x 7 的特征图&#xff0c;然后用 FC 层完成分…

大学专业解读——计算机

我们继续&#xff0c;讲讲排名第二流行的新工科专业——计算机。说到计算机&#xff0c;可能所有人都知道&#xff0c;但具体到细分的专业类别&#xff0c;除了计算机科学&#xff0c;其实大多数人都是不了解的。 序&#xff1a; 计算机主要有如下几个专业&#xff1a; 计算机…

Bootstrap 5学习教程,从入门到精通, Bootstrap 5 列表组(List Group)语法知识点及案例(14)

Bootstrap 5 列表组(List Group)语法知识点及案例 一、列表组基础语法 列表组是Bootstrap中用于显示一系列内容的灵活组件&#xff0c;常用于显示菜单、导航或任何项目列表。 基本列表组结构 <ul class"list-group"><li class"list-group-item&quo…

FPGA基础 -- Verilog 命名事件

Verilog 的“命名事件&#xff08;Named Events&#xff09;”机制 进行一次系统、专业的培训。该机制在 Verilog 中是比较冷门但重要的仿真控制特性&#xff0c;主要用于 模块间同步、行为仿真触发、事件通信&#xff0c;在复杂的 Testbench、行为模型中尤为重要。 一、命名事…

《Go语言圣经》结构体

《Go语言圣经》结构体 一、结构体指针的高效应用 在处理大型结构体时&#xff0c;为避免内存复制&#xff0c;通常使用指针传递和返回结构体&#xff1a; // 通过指针传入结构体&#xff0c;避免值拷贝 func Bonus(e *Employee, percent int) int {return e.Salary * percen…

Ascend上如何进行带宽测试

1 工具安装 1.1 下载链接 https://www.hiascend.com/developer/download/community/result?moduledl%2Bcann 1.2 安装指令&#xff1a; ./Ascend-mindx-toolbox_{version}_linux-{arch}.run --install设置环境变量&#xff1a; source /usr/local/Ascend/toolbox/set_env.…

生产BUG集

磁盘达到阈值导致ES无法删除数据 method [POST], host [http://xx.xxx.xxx.xxx:9200], URI [/security_event/_delete_by_query?slices1&requests_per_second-1&ignore_unavailablefalse&expand_wildcardsopen&allow_no_indicestrue&ignore_throttledtru…

基于FastAPI与Selenium的智能开关状态管理系统实践

引言 在工业物联网&#xff08;IIoT&#xff09;与自动化控制场景中&#xff0c;设备状态的实时监控与自然语言指令执行是提升效率的关键。本文将介绍一种基于 FastAPI 和 Selenium 的智能设备状态管理系统&#xff0c;通过大语言模型&#xff08;LLM&#xff09;解析用户指令…

主体和债项均为“AAA”等级 海尔消金发行10亿金融债

6月18日&#xff0c;继年内发行ABS、落地ESG挂钩银团贷后&#xff0c;海尔消费金融&#xff08;以下简称“海尔消金”&#xff09;在金融市场上又迈出重要一步&#xff0c;成功簿记发行2025年首期规模达10亿元金融债&#xff0c;且主体信用等级仍为“AAA”。这一举措为海尔消金…

n8n:轻松自动化您的工作流

借助开源自动化利器 n8n&#xff0c;释放重复劳动的生产力&#xff01; 引言 n8n 是一款免费、开源的工作流自动化工具&#xff0c;致力于帮助开发者和团队通过连接各种应用和服务&#xff0c;实现重复任务的自动化处理。 它由 Jan Oberhauser 于 2019 年在德国柏林创建&…

Angular--Hello(TODO)

最近有个小错误&#xff0c;因为最近还是在看thingsboard&#xff0c;最近终于看到前端的代码&#xff0c;突然发现怎么全是ts的文件&#xff0c;仔细一看原来并不是之前认为的AngularJS&#xff0c;而是Angular。。。我tm真的无语了&#xff0c;又要去重新学。。。 Angular的…

在 Linux 系统中通过 yum 安装 Sublime Text

在 Linux 系统中通过 yum 安装 Sublime Text 的步骤如下&#xff1a; ​步骤 1&#xff1a;导入 GPG 公钥​ sudo rpm -v --import https://download.sublimetext.com/sublimehq-rpm-pub.gpg 这一步用于验证软件包的合法性。 ​步骤 2&#xff1a;添加 Sublime Text 的软件仓…

面向自主多星对地观测的多智能体强化学习

大家读完觉的有帮助记得及时关注和点赞&#xff01;&#xff01;&#xff01; 抽象 近地轨道 &#xff08;LEO&#xff09; 卫星的指数级增长彻底改变了地球观测 &#xff08;EO&#xff09; 任务&#xff0c;解决了气候监测、灾害管理等方面的挑战。然而&#xff0c;多卫星系统…

flutter 短视频相关插件选型

​插件名称​​核心优势​​缺点​​短视频场景适用性​​推荐指数​​video_player​ (官方基础库)• 官方维护&#xff0c;跨平台兼容性最佳&#xff08;iOS/Android/macOS&#xff09; • 轻量级&#xff0c;无额外依赖&#xff0c;启动速度快 • 支持本地/网络视频、基础播…

QTableView为例:Qt模型视图委托(MVD)(Model-View-Delegate)

文章目录 1. QT中的MVD模式2. View3. Model4. Delegate5. 以TableView为例 1. QT中的MVD模式 模型视图委托&#xff08;MVD&#xff09;是Qt中特有的设计模式&#xff0c;类似MVC设计模式&#xff0c;将MVC设计模式中的Controller当做MVD中的Delegate&#xff0c;两者的概念基…

uni-app总结3-项目新建运行调试

一、新建项目 通过HbuilderX新建 在点击工具栏里的文件 -> 新建 -> 项目&#xff08;快捷键CtrlN&#xff0c;MacOS上是CMD N&#xff09;&#xff1a; 左测Tab选择uni-app类型&#xff0c;输入工程名&#xff0c;选择模板&#xff0c;Vue版本选择3&#xff0c;其他不…