chrony时钟同步详解

2023-11-14

一、 简介

  Chrony是一个开源的自由软件,它能帮助你保持系统时钟与时钟服务器(NTP)同步,因此让你的时间保持精确。它由两个程序组成,分别是chronyd和chronyc。chronyd是一个后台运行的守护进程,用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率,并对此进行补偿。chronyc提供了一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作。

二、 配置文件详解

  当Chrony启动时,它会读取/etc/chrony.conf配置文件中的设置。CentOS 7操作系统上最重要的设置有:

1.server - 该参数可以多次用于添加时钟服务器,必须以"server "格式使用。一般而言,你想添加多少服务器,就可以添加多少服务器。

2.stratumweight - stratumweight指令设置当chronyd从可用源中选择同步源时,每个层应该添加多少距离到同步距离。默认情况下,CentOS中设置为0,让chronyd在选择源时忽略源的层级。

3.driftfile - chronyd程序的主要行为之一,就是根据实际时间计算出计算机增减时间的比率,将它记录到一个文件中是最合理的,它会在重启后为系统时钟作出补偿,甚至可能的话,会从时钟服务器获得较好的估值。

4.rtcsync - rtcsync指令将启用一个内核模式,在该模式中,系统时间每11分钟会拷贝到实时时钟(RTC)。

5.allow / deny - 这里你可以指定一台主机、子网,或者网络以允许或拒绝NTP连接到扮演时钟服务器的机器。

allow 192.168.4.5
deny 192.168/16

6.cmdallow / cmddeny - 跟上面相类似,只是你可以指定哪个IP地址或哪台主机可以通过chronyd使用控制命令

7.bindcmdaddress - 该指令允许你限制chronyd监听哪个网络接口的命令包(由chronyc执行)。该指令通过cmddeny机制提供了一个除上述限制以外可用的额外的访问控制等级。

bindcmdaddress 127.0.0.1
bindcmdaddress ::1

8.makestep - 通常,chronyd将根据需求通过减慢或加速时钟,使得系统逐步纠正所有时间偏差。在某些特定情况下,系统时钟可能会漂移过快,导致该调整过程消耗很长的时间来纠正系统时钟。该指令强制chronyd在调整期大于某个阀值时步进调整系统时钟,但只有在因为chronyd - 启动时间超过指定限制(可使用负值来禁用限制),没有更多时钟更新时才生效。

三、 使用chronyc

你也可以通过运行chronyc命令来修改设置,命令如下:

chronyc:进入设置
accheck: 检查NTP访问是否对特定主机可用
activity: 该命令会显示有多少NTP源在线/离线
add server: 手动添加一台新的NTP服务器。
clients: 在客户端报告已访问到服务器
delete: 手动移除NTP服务器或对等服务器
settime: 手动设置守护进程时间
tracking: 显示系统时间信息
help:显示帮助

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

chrony时钟同步详解 的相关文章

  • 使用 inotify 的正确方法是什么?

    我想使用inotifyLinux 上的机制 我希望我的应用程序知道文件何时aaa被改变了 您能给我提供一个如何做到这一点的示例吗 文档 来自监视文件系统活动 inotify https developer ibm com tutorials
  • linux下写入后崩溃

    如果我使用 write 将一些数据写入磁盘上的文件会发生什么 但我的应用程序在刷新之前崩溃了 如果没有系统故障 是否可以保证我的数据最终会刷新到磁盘 如果您正在使用write 并不是fwrite or std ostream write 那
  • 在 Linux 上访问 main 之外的主要参数

    是否可以访问参数main在外面main 即在共享库构造函数中 在 Linux 上除了通过解析之外 proc self cmdline 您可以通过将构造函数放入 init array部分 功能在 init array 不像 init 使用相同
  • 如何使用 echo 写入非 ASCII 字符?

    如何写非ASCII http en wikipedia org wiki ASCII使用 echo 的字符 是否有转义序列 例如 012或类似的东西 我想使用以下方法将 ASCII 字符附加到文件中 echo gt gt file 如果您关
  • pprof 和 ps 之间的内存使用差异

    我一直在尝试分析用 cobra 构建的 cli 工具的堆使用情况 这pprof工具显示如下 Flat Flat Sum Cum Cum Name Inlined 1 58GB 49 98 49 98 1 58GB 49 98 os Read
  • 推荐用于小型站点的 IRC 服务器 (ircd)? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 情况 我想使用 IRC 机器人作为我正在研究的其他代码的通用通信接口 服务器硬件陈旧且内存不足 但运行在相对最新的 Debian GNU
  • 码头无故停止

    我需要经验丰富的码头用户的建议 我在负载均衡器 亚马逊云 后面维护着 2 台 Linux 机器 使用 Jetty 9 0 3 有时我的 Jetty 容器会被 Thread 2 无故关闭 同时地 显示以下日志并且容器无故停止 没有错误 没有例
  • Linux“屏幕”的 Windows 等效项还是其他替代方案?

    我正在寻找一种在 Windows 环境中控制程序的方法 我希望它与 Linux 软件有点相似 screen 我搜索的原因是我需要使用标识符启动一个程序 在 Windows 上 这样我以后就能够关闭该特定程序 而无需关闭其他任何程序 即使实际
  • 从 php/linux 获取 pdf 的布局模式(横向或纵向)

    给定一个 PDF 如何使用 PHP lib 或 Linux 命令行工具获取 PDF 的布局模式 或相对宽度 高度 Using http www tecnick com public code cp dpage php aiocp dp tc
  • Fortran 中的共享库,最小示例不起作用

    我试图了解如何在 Linux 下的 Fortran 中动态创建和链接共享库 我有两个文件 第一个 liblol f90 看起来像这样 subroutine func print lol end subroutine func 我用它编译gf
  • 如何设置Java线程的CPU核心亲和力?

    我搜索了以前关于类似主题的帖子 但找不到合适的答案 因此提出这个问题 非常感谢您帮助回答 我知道在 Linux 中通过任务集命令设置进程与特定 CPU 核心的关联性 但我想设置 Java 线程与特定 cpu 核心的亲和力 以便属于同一进程的
  • 如何从远程 ssh 连接上运行的 tmux(复制模式)复制到本地剪贴板

    我通过 OS X 上的 VirtualBox 运行 Linux 我通过在无头状态下运行虚拟机 然后使用端口转发 sshing 到 Linux 机器来实现这一点 现在 无论复制到我的虚拟机上的剪贴板 我都可以粘贴到我的远程 ssh 会话上 但
  • 运行此处编译的 C 程序会导致在另一台服务器上找不到 GLIBC 库错误 - 是我的错还是他们的错?

    此处编译的 C 程序在我们的 Ubuntu 服务器上运行良好 但是当其他人尝试在他们的特定 Linux 服务器上运行它时 他们会收到以下错误 myprog install lib tls libc so 6 version GLIBC 2
  • 为什么docker容器提示“权限被拒绝”?

    我使用以下命令来运行 docker 容器 并从主机映射目录 root database 到容器 tmp install database docker run it name oracle install v root database t
  • 用于时间线数据的类似 gnuplot 的程序

    我正在寻找一个类似 gnuplot用于在时间轴中绘制数据图表的程序 类似 gnuplot 在 Linux 上运行 命令行功能 GUI 对我帮助不大 可编写脚本的语法 输出为 jpg png svg 或 gif 输出应该是这样的 set5 s
  • 了解 Linux oom-killer 日志

    我的应用程序被 oom killer 杀死了 它是在实时 USB 上运行的 Ubuntu 11 10 无需交换 PC 具有 1 Gig 的 RAM 唯一运行的应用程序 除了所有内置的 Ubuntu 东西 是我的程序 flasherav 请注
  • pthread_self() 返回的线程 ID 与调用 gettid(2) 返回的内核线程 ID 不同

    这句话来自于pthread self 的手册页 http linux die net man 3 pthread self 那么 我应该根据什么来决定是否应该使用pthread self or gettid确定哪个线程正在运行该函数 两者都
  • 为什么 call_usermodehelper 大多数时候都会失败?

    从内核模块中 我尝试使用 call usermodehelper 函数来执行可执行文件 sha1 该可执行文件将文件作为参数并将文件的 SHA1 哈希和写入另一个文件 名为输出 可执行文件完美运行 int result 1 name hom
  • 如何回忆上一个 bash 命令的参数?

    Bash 有没有办法回忆上一个命令的参数 我通常这样做vi file c其次是gcc file c Bash 有没有办法回忆上一个命令的参数 您可以使用 or 调用上一个命令的最后一个参数 Also Alt can be used to r
  • Unix 中的访问时间是多少

    我想知道访问时间是多少 我在网上搜索但得到了相同的定义 读 被改变 我知道与touch我们可以改变它 谁能用一个例子来解释一下它是如何改变的 有没有办法在unix中获取创建日期 时间 stat结构 The stat 2 结构跟踪所有文件日期

随机推荐

  • 【PyQT5 绑定函数的传参(connect)】

    PyQT5 绑定函数的传参 connect 带参数 emanlee 博客园
  • 单向链表的基本操作

    一 什么是单向链表 单向链表也叫单链表 是链表中最简单的一种形式 它的每个节点包含两个域 一个信息域 元素域 和一个链接域 这个链接指向链表中的下一个节点 而最后一个节点的链接域则指向一个空值 a 表元素域elem用来存放具体的数据 b 链
  • mysql启动不开

    Can t connect to local MySQL server through socket tmp mysql sock 原因 etc my cnf 配置文件中设置了 mysqld 的参数 socket 而没有设置 client
  • django在html中显示图片【实测成功】

    仅作为记录 大佬请跳过 文章目录 背景 解决 1 自己新建static文件夹 2 settings py修改 3 templates文件夹里的showpic html修改 运行 参考 所有源代码 firstweb文件夹 migrations
  • 微服务核心架构梳理

    什么是微服务 微服务之父Martin Fowler 对微服务大概的概述如下 就目前而言 对于微服务业界并没有一个统一的 标准的定义 While there is no precise definition of this architect
  • 前端面试(每日更新)

    目录 1 如何快速让盒子居中对齐 2 margin和padding有什么不同 3 vw与百分比的区别 4 行内和块级元素 5 如何让谷歌浏览器 默认12px最小 支持小字体 6 let与var 7 深拷贝与浅拷贝 8 Promise 1 如
  • spring七种事务的传播行为

    PROPAGATION SUPPORTS 支持当前事务 如果当前没有事务 就以非事务方式执行 PROPAGATION MANDATORY 支持当前事务 如果当前没有事务 就抛出异常 PROPAGATION REQUIRES NEW 新建事务
  • JavaWeb防止表单重复提交的几种方式

    一 表单重复提交的常见应用场景 网络延迟的情况下用户多次点击submit按钮导致表单重复提交 用户提交表单后 点击 刷新 按钮导致表单重复提交 点击浏览器的刷新按钮 就是把浏览器上次做的事情再做一次 因为这样也会导致表单重复提交 用户提交表
  • oracle两张表数据匹配,Oracle-left join两表关联只取B表匹配到的第一条记录

    背景 A表 B表两表关联 关联出来的结果里B表有不止一条 需求是只要B表结果中的某一条 按某字段排序 经过百度 发现 row number over partition by a order by b desc 函数可用 需要说明下 ord
  • Elasticsearch-索引操作

    创建索引库 Elasticsearch采用Rest风格API 因此其API就是一次http请求 你可以用任何工具发起http请求 PUT 索引名称 settings 属性名 属性值 settings 就是索引库设置 其中可以定义索引库的各种
  • 使用VS Code调试JavaScript代码

    使用VS Code调试JavaScript代码 安装Debugger for Chrome或者Debugger for Firefox插件 按下图步骤操作 选择你想使用的浏览器 选择完成后他会生成一个launch json文件 添加 fil
  • vue3递归实现动态菜单

    效果图 RecursionMenu vue
  • 17. 正则表达式

    Hi 大家好 我是茶桁 不知不觉中 咱们针对人工智能的Python课程已经过去了一半 相信大家这段时间也都有所进步了 今天这节课呢 我给大家划一个重点 不仅仅是Python 很多语言里都是通用的 而且非常的强大 这就是我们的正则表达式 说起
  • 【安装教程】vscode安装教程(超详细)

    Visual Studio Code 简称 VSCode 是一款由微软开发且跨平台的免费源代码编辑器 该软件支持语法高亮 代码自动补全 代码重构功能 并且内置了命令行工具和 Git版本控制系统 用户可以更改主题和键盘快捷方式实现个性化设置
  • 关于CDN那些名词,你知道吗?

    Origin Server源站 做 CDN 之前的客户真正的服务器 User 访问者 也就是要访问网站的网民 Last Mile最后一公里 也就是网民到他所访问到的 CDN 服务器之间的路径 域名 域名是Internet网络上的一个服务器或
  • 【C语言进阶】自定义类型详解 —— 结构体,枚举,联合体(共用体)

    文章目录 1 结构体 1 1 结构体类型的声明 1 2 结构体的特殊声明 1 3 结构体的自引用 1 4 结构体变量的定义和初始化 1 5 结构体内存对齐 1 6 修改默认对齐数 1 7 结构体传参 2 位段 2 1 什么是位段 2 2 位
  • 概要设计与详细设计的区别

    概要设计与详细设计的区别 概要设计就是设计软件的结构 包括组成模块 模块的层次结构 模块的调用关系 每个模块的功能等等 同时 还要设计该项目的应用系统的总体数据结构和数据库结构 即应用系统要存储什么数据 这些数据是什么样的结构 它们之间有什
  • 英语常见缩写,职业,公司

    VIP very improtant person重要人物 IMP import 进口 EXP export 出口 MAX maximum 最大的 的最大限度的 MIN minimum 最小的 最低限度 DOC document 文件 的单
  • css圆角容器改变背景色时圆角失效

    圆角的容器 改变背景色时 新背景色却并不是圆角 而是填充的直角 解决办法 给容器加样式 overflow hidden
  • chrony时钟同步详解

    一 简介 Chrony是一个开源的自由软件 它能帮助你保持系统时钟与时钟服务器 NTP 同步 因此让你的时间保持精确 它由两个程序组成 分别是chronyd和chronyc chronyd是一个后台运行的守护进程 用于调整内核中运行的系统时