Chrony 简介

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

安装 Chrony

Debian/Ubuntu 系统

root@LimeLinux:~# apt  install chrony -yReading package lists... DoneBuilding dependency tree       Reading state information... DoneSuggested packages:  dnsutils networkd-dispatcherThe following NEW packages will be installed:  chrony0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.Need to get 234 kB of archives.After this operation, 510 kB of additional disk space will be used.Get:1 http://mirrors.aliyun.com/debian buster/main amd64 chrony amd64 3.4-4+deb10u1 [234 kB]Fetched 234 kB in 0s (1,255 kB/s)Selecting previously unselected package chrony.(Reading database ... 27613 files and directories currently installed.)Preparing to unpack .../chrony_3.4-4+deb10u1_amd64.deb ...Unpacking chrony (3.4-4+deb10u1) ...Setting up chrony (3.4-4+deb10u1) ...Creating '_chrony' system user/group for the chronyd daemon…Creating config file /etc/chrony/chrony.conf with new versionCreating config file /etc/chrony/chrony.keys with new versionCreated symlink /etc/systemd/system/chronyd.service → /lib/systemd/system/chrony.service.Created symlink /etc/systemd/system/multi-user.target.wants/chrony.service → /lib/systemd/system/chrony.service.Processing triggers for man-db (2.8.5-2) ...Processing triggers for systemd (241-7~deb10u5) ...root@LimeLinux:~#

Chrony 配置文件

chrony 的配置文件是“ /etc/chrony.conf ”

各项参数含义:

1.server - 指:pool 2.debian.pool.ntp.org iburst, 该参数可以多次用于添加时钟服务器,一般来说,你想添加多少服务器,就可以添加多少服务器。

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

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

4.allow / deny - 可以指定一台主机、子网,或者网络以允许或拒绝NTP连接到时钟服务器的机器。简而言之,就是设置那些IP地址可以使用NTP服务。

allow 192.168.4.5/32 #允许某个IPdeny 192.168.1.0/24  #拒绝一个网段allow 0.0.0.0./0 #允许所有IP来同步时间

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

提示:整个配置文件,只需要添加 allow 0.0.0.0/0 即可,不需要作其它修改。

如下简单配置文件:

root@LimeLinux:~# nano /etc/chrony/chrony.conf#pool 2.debian.pool.ntp.org iburst# add servers in your timezone to sync timesserver ntp.aliyun.com iburstserver ntp1.aliyun.com iburst# add to the end : add the network range you allow to receive requestsallow 192.168.10.0/24root@LimeLinux:~#

chrony 相关命令

测试时间

像NTP发行版中的ntpdate命令一样,我们可以使用chronyd手动将Linux服务器的时间与远程NTP服务器同步

语法:# chronyd -q ‘server {ntp_server_name} iburst’

root@LimeLinux:/etc/chrony# chronyd -q 'server 2.debian.pool.ntp.org iburst'2020-12-27T03:40:09Z chronyd version 3.4 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 -DEBUG)2020-12-27T03:40:09Z Initial frequency -25.488 ppm2020-12-27T03:40:14Z System clock wrong by 0.001955 seconds (step)2020-12-27T03:40:14Z chronyd exitingroot@LimeLinux:/etc/chrony# 

启动 chronyd 守护程序,并开机自启

root@LimeLinux:~# systemctl start chrony #root@LimeLinux:~# systemctl enable chrony

查看chrony状态

root@LimeLinux:~# systemctl status chrony● chrony.service - chrony, an NTP client/server   Loaded: loaded (/lib/systemd/system/chrony.service; enabled; vendor preset: enabled)   Active: active (running) since Sun 2020-12-27 11:16:22 CST; 27min ago     Docs: man:chronyd(8)           man:chronyc(1)           man:chrony.conf(5) Main PID: 1163 (chronyd)    Tasks: 2 (limit: 2327)   Memory: 1.2M   CGroup: /system.slice/chrony.service           ├─1163 /usr/sbin/chronyd -F -1           └─1164 /usr/sbin/chronyd -F -1Dec 27 11:16:22 LimeLinux systemd[1]: Starting chrony, an NTP client/server...Dec 27 11:16:22 LimeLinux chronyd[1163]: chronyd version 3.4 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 -DEBUG)Dec 27 11:16:22 LimeLinux chronyd[1163]: Initial frequency -81.770 ppmDec 27 11:16:22 LimeLinux chronyd[1163]: Loaded seccomp filterDec 27 11:16:22 LimeLinux systemd[1]: Started chrony, an NTP client/server.Dec 27 11:16:28 LimeLinux chronyd[1163]: Selected source 193.182.111.12Dec 27 11:17:34 LimeLinux chronyd[1163]: Selected source 78.46.102.180Dec 27 11:28:22 LimeLinux chronyd[1163]: Selected source 94.130.49.186root@LimeLinux:~#

验证和跟踪时间同步

要验证系统时间是否已使用chrony同步,使用以下命令

root@LimeLinux:~# chronyc tracking Reference ID    : 5E8231BA (94.130.49.186)Stratum         : 4Ref time (UTC)  : Sun Dec 27 03:44:34 2020System time     : 0.000223043 seconds slow of NTP timeLast offset     : +0.000090305 secondsRMS offset      : 0.002856454 secondsFrequency       : 23.360 ppm slowResidual freq   : +0.038 ppmSkew            : 2.059 ppmRoot delay      : 0.208674118 secondsRoot dispersion : 0.002633217 secondsUpdate interval : 65.1 secondsLeap status     : Normalroot@LimeLinux:~#
  • Reference ID 是系统时间当前同步到的服务器的ID和名称。
  • Stratum 表示带有附加参考时钟的离开服务器的跳数。

检查时间来源

要列出有关chronyd使用的当前时间源的信息,命令如下:

root@LimeLinux:~# chronyc sources210 Number of sources = 4MS Name/IP address         Stratum Poll Reach LastRx Last sample               ===============================================================================^+ 193.182.111.12                2   8   377    30    +54ms[  +54ms] +/-  179ms^+ 78.46.102.180                 3   8   377   294    -15ms[  -15ms] +/-  128ms^+ 108.59.2.24                   2   7   377    31  +1782us[+1782us] +/-  260ms^* 94.130.49.186                 3   7   377   227    -16ms[  -16ms] +/-  106msroot@LimeLinux:~# 

要列出有关源的更多详细信息:

root@LimeLinux:~# chronyc sources -v210 Number of sources = 4  .-- Source mode  '^' = server, '=' = peer, '#' = local clock. / .- Source state '*' = current synced, '+' = combined , '-' = not combined,| /   '?' = unreachable, 'x' = time may be in error, '~' = time too variable.||                                                 .- xxxx [ yyyy ] +/- zzzz||      Reachability register (octal) -.           |  xxxx = adjusted offset,||      Log2(Polling interval) --.      |          |  yyyy = measured offset,||                                     |          |  zzzz = estimated error.||                                 |    |           MS Name/IP address         Stratum Poll Reach LastRx Last sample               ===============================================================================^+ 193.182.111.12                2   8   377   153    +53ms[  +54ms] +/-  179ms^+ 78.46.102.180                 3   8   377    31    -15ms[  -14ms] +/-  134ms^+ 108.59.2.24                   2   7   377    24   +566us[ +566us] +/-  261ms^* 94.130.49.186                 3   7   377    27    -19ms[  -18ms] +/-  110msroot@LimeLinux:~#  查看时间来源统计

查看时间来源统计

要列出有关chronyd使用的每个源的漂移速度和偏移估计的信息,命令如下:

root@LimeLinux:~# chronyc sourcestats -v210 Number of sources = 4                             .- Number of sample points in measurement set.                            /    .- Number of residual runs with same sign.                           |    /    .- Length of measurement set (time).                           |   |    /      .- Est. clock freq error (ppm).                           |   |   |      /           .- Est. error in freq.                           |   |   |     |           /         .- Est. offset.                           |   |   |     |          |          |   On the -.                           |   |   |     |          |          |   samples.                            |   |   |     |          |          |             |Name/IP Address            NP  NR  Span  Frequency  Freq Skew  Offset  Std Dev==============================================================================193.182.111.12             23  12   32m     -1.740      6.255    +48ms  4329us78.46.102.180              23  10   34m     -0.728      2.353    -20ms  1435us108.59.2.24                18  13   23m     +0.278      2.966  +2534us  1259us94.130.49.186              13   6  1164     +0.863      4.477    -16ms  1017usroot@LimeLinux:~# 

设置防火墙

允许ntp服务 123/udp 通过

root@LimeLinux:~# ufw allow 123/udp

Linux改变生活,技术更好的工作!

时钟服务器地址_时钟同步 Chrony 教程相关推荐

  1. linux ntp时钟服务器地址_Linux 下同步时间,另附 NTP 服务器地址

    Linux 下 NTP 同步:ntpdate –u [IP地址或域名] Linux 下获取当前时间:date Windows 大家应该都知道...吗? 国家授时中心 NTP 服务器 NTSC NTP ...

  2. cmd 顺序启动服务_NTP时钟服务器部署以及时钟同步设置

    NTP时钟服务器部署以及时钟同步设置 NTP时钟服务器部署以及时钟同步设置 一.前言 1.NTP简介 NTP是网络时间协议(Network Time Protocol),它是用来同步网络中各个计算机的 ...

  3. NTP时钟服务器(卫星时钟系统)是如何让集成系统协调工作的?

    NTP时钟服务器(卫星时钟系统)是如何让集成系统协调工作的? NTP时钟服务器(卫星时钟系统)是如何让集成系统协调工作的? 本文主要解释了区块链中的重要功能:工作证明(Proof-of-Work).主 ...

  4. Linux中DNS服务器地址查询命令nslookup使用教程

    这篇文章主要介绍了Linux中DNS服务器地址查询命令nslookup使用教程,是Linux服务器运维的必备知识,需要的朋友可以参考下 nslookup 程序是DNS 服务的主要诊断工具,它提供了执行 ...

  5. linux ntp时钟服务器地址_linux ntp时间服务器配置

    Network Time Protocol (NTP) 也是RHCE新增的考试要求. 学习的时候也顺便复习了一下如何设置Linux的时间,现在拿出来和大家分享 设置NTP服务器不难但是NTP本身是一个 ...

  6. linux ntp时钟服务器地址_linux中ntp时钟服务器怎么配

    匿名用户 1级 2016-02-29 回答 展开全部 执行ntpdate xxx.xxx.xxx.xxx(ntp服务器地址). Linux下配置NTP服务器 配置方法: 1.ntp服务安装 NTP服务 ...

  7. linux ntp时钟服务器地址_Linux配置时间同步以及国内常用的NTP服务器地址

    有时服务器需要调整时区并调整时间,需要用到的命令:ntpdate 一般Linux系统都默认安装了NTP服务,如果没有安装的话,也可以直接使用yum安装,yum安装命令为:yum install -y ...

  8. 阿里云mysql创建数据库服务器地址_阿里云服务器创建数据库操作流程

    阿里云服务器创建数据库操作流程,如何上传数据库阿里云. 在阿里云ecs云服务器上部署数据库后,在平常的操作中可能会遇到些问题,可以先做个大致的了解: 如果您想看更多的在ecs上的数据库的相关操作,请前 ...

  9. Java实现的时钟置换算法_时钟页面置换算法

    一.局部:时钟置换算法: 1.最优置换算法:理论上的,预测最晚调用的页面. 2.LRU算法,置换掉最久未使用的. 一个链表.一个页面被调用的话,会被从链表中(它原本的位置)移动到链表首,而每次缺页,则 ...

最新文章

  1. 实现无刷新DropDownList联动效果
  2. PS 图像尺寸|点阵格式图像|矢量格式图像|图像格式的选择
  3. Python实用笔记 (2)list和tuple
  4. boost::geometry::transform用法的测试程序
  5. 486. Predict the Winner | 486. 预测赢家(博弈论)
  6. C#: 8.0 和 9.0 常用新特性
  7. gptuefi优势_UEFI+GPT的区别,有啥不同?写的很详细易懂
  8. python联科_联科集团携手阿里云发布科研混合云平台 共建科研教育新生态
  9. mysql存储过程自定义结构体_(转)MySQL存储过程/存储过程与自定义函数的区别...
  10. Jersey 2.x 运行项目
  11. 使用Office 365抓取PM2.5数据
  12. 数据库系统概论(第5版)学习笔记第1章 1.1——数据库系统概论
  13. [数学建模]数学规划模型
  14. R语言-运筹学线性规划实例
  15. AS常用指令,常用功能,以及常见问题
  16. 什么是4G工业智能网关?与DTU有什么区别
  17. 服务器里面增加单页网站,如何设计完美的单页网站
  18. 关键词搜索量是什么,如何看待关键词热度!
  19. 【算法】传教士和野人问题
  20. ToG产品_产品白皮书框架_2019_003

热门文章

  1. Python入门学习笔记(8)
  2. Hello log4net——做一个实用好用的log4net的demo(转)
  3. 单页面响应式模板:黑石
  4. Android中图片的处理(放大缩小,去色,转换格式,增加水印等)(转)
  5. 《ASP.NET 本质论》源码下载
  6. 用php向MySQL的datetime类型插入数据
  7. Windows API封装:LoadLibrary/FreeLibrary
  8. (图论)51NOD 1264 线段相交
  9. ftp协议及vsftpd的基本应用
  10. 【图灵杯 E也即POJ 3368】简单的RMQ