Linux系统之时间同步实现方法

 更新时间:2025年08月28日 10:59:09   作者:江湖有缘  
本文系统介绍了NTP、ntpdate和chrony三种时间同步工具的使用方法,包括安装、配置、启动、状态检查及同步失败处理,同时涵盖手动调整时间、同步硬件时间与设置时区的操作步骤

一、使用NTP服务时间同步

1.安装ntp

[root@node ~]# yum -y install ntp

2.启动ntp服务

[root@node ~]# systemctl start  ntpd
[root@node ~]# systemctl enable  ntpd
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.

3.查看ntp服务

[root@node ~]# systemctl status ntpd
● ntpd.service - Network Time Service
   Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2022-08-04 08:00:47 CST; 7h left
 Main PID: 20746 (ntpd)
    Tasks: 1
   Memory: 768.0K
   CGroup: /system.slice/ntpd.service
           └─20746 /usr/sbin/ntpd -u ntp:ntp -g

Aug 04 08:00:47 node ntpd[20746]: Listen normally on 6 lo ::1 UDP 123
Aug 04 08:00:47 node ntpd[20746]: Listen normally on 7 ens33 fe80::8a83:7297:7cb8:9934 UDP 123
Aug 04 08:00:47 node ntpd[20746]: Listening on routing socket on fd #24 for interface updates
Aug 04 08:00:47 node systemd[1]: Started Network Time Service.
Aug 04 08:00:47 node ntpd[20746]: 0.0.0.0 c016 06 restart
Aug 04 08:00:47 node ntpd[20746]: 0.0.0.0 c012 02 freq_set kernel 0.000 PPM
Aug 04 08:00:47 node ntpd[20746]: 0.0.0.0 c011 01 freq_not_set
Aug 04 08:00:56 node ntpd[20746]: 0.0.0.0 c61c 0c clock_step -28798.353463 s
Aug 04 00:00:57 node ntpd[20746]: 0.0.0.0 c614 04 freq_mode
Aug 04 00:00:58 node ntpd[20746]: 0.0.0.0 c618 08 no_sys_peer

4.修改ntp.conf文件

[root@node ~]# vim /etc/ntp.conf
[root@node ~]# grep server /etc/ntp.conf 
# Use public servers from the pool.ntp.org project.
#server 0.centos.pool.ntp.org iburst
server ntp.aliyun.com iburst
#broadcast 192.168.1.255 autokey	# broadcast server
#broadcast 224.0.1.1 autokey		# multicast server
#manycastserver 239.255.254.254		# manycast server

5.重启服务

[root@node ~]# systemctl restart ntpd

6.检查同步状态

[root@node ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 203.107.6.88    100.107.25.114   2 u    2   64    1   30.975  149.499   0.393

二、使用ntpdate同步

1.使用ntpd命令同步

[root@node ~]# ntpdate ntp.aliyun.com
 4 Aug 00:07:17 ntpdate[20924]: adjust time server 203.107.6.88 offset -0.001543 sec

2.查看时间

[root@node ~]# date
Thu Aug  4 00:07:46 CST 2022

三、处理ntpdate同步失败报错处理方法

1.报错信息

cna02:~ # ntpdate ntp1.aliyun.com
 4 Aug 07:23:41 ntpdate[18694]: the NTP socket is in use, exiting

2.处理方法

cna02:~ # service ntpd stop
Redirecting to /bin/systemctl stop ntpd.service

3.重新同步

cna02:~ # ntpdate ntp1.aliyun.com
 3 Aug 23:22:36 ntpdate[28980]: step time server 120.25.115.20 offset -28911.609110 sec

4.查看时间是否正确

cna02:~ # date
Wed Aug  3 23:22:41 CST 2022

四、使用chrony服务时间同步

1.安装chrony

[root@node ~]# yum -y install chrony
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.bfsu.edu.cn
 * extras: mirrors.bfsu.edu.cn
 * updates: mirrors.bfsu.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package chrony.x86_64 0:3.2-2.el7 will be updated
---> Package chrony.x86_64 0:3.4-1.el7 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

===============================================================================================================================================================================
 Package                                  Arch                                     Version                                        Repository                              Size
===============================================================================================================================================================================
Updating:
 chrony                                   x86_64                                   3.4-1.el7                                      base                                   251 k

Transaction Summary
===============================================================================================================================================================================
Upgrade  1 Package

Total download size: 251 k
Downloading packages:
No Presto metadata available for base
chrony-3.4-1.el7.x86_64.rpm                                                                                                                             | 251 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Updating   : chrony-3.4-1.el7.x86_64                                                                                                                                     1/2 
  Cleanup    : chrony-3.2-2.el7.x86_64                                                                                                                                     2/2 
  Verifying  : chrony-3.4-1.el7.x86_64                                                                                                                                     1/2 
  Verifying  : chrony-3.2-2.el7.x86_64                                                                                                                                     2/2 

Updated:
  chrony.x86_64 0:3.4-1.el7                                                                                                                                                    

Complete!

2.启动chrony服务

[root@node ~]# systemctl enable --now chronyd
Created symlink from /etc/systemd/system/multi-user.target.wants/chronyd.service to /usr/lib/systemd/system/chronyd.service.

3.查看chrony状态

[root@node ~]# systemctl status chronyd
● chronyd.service - NTP client/server
   Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)
   Active: active (running) since Thu 2022-08-04 00:12:27 CST; 29s ago
     Docs: man:chronyd(8)
           man:chrony.conf(5)
  Process: 21136 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS)
  Process: 21132 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS)
 Main PID: 21134 (chronyd)
    Tasks: 1
   Memory: 364.0K
   CGroup: /system.slice/chronyd.service
           └─21134 /usr/sbin/chronyd

Aug 04 00:12:27 node systemd[1]: Starting NTP client/server...
Aug 04 00:12:27 node chronyd[21134]: chronyd version 3.4 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH +IPV6 +DEBUG)
Aug 04 00:12:27 node systemd[1]: Started NTP client/server.
Aug 04 00:12:35 node chronyd[21134]: Selected source 193.182.111.141
Aug 04 00:12:35 node chronyd[21134]: Source 78.46.102.180 replaced with 94.237.64.20

4.修改配置文件

[root@node ~]# grep server /etc/chrony.conf 
# Use public servers from the pool.ntp.org project.
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server ntp1.aliyun.com iburst

5.重启服务

[root@node ~]# systemctl restart chronyd

6.检查时间同步状态

[root@node ~]# chronyc sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* 120.25.115.20                 2   6    71    26   +751us[+1549us] +/-   19ms

五、手动修改时间

1.修改时间方法1

[root@node ~]# date -s "2012-05-23 01:01:01"
Wed May 23 01:01:01 CST 2012
[root@node ~]# date
Wed May 23 01:01:05 CST 2012

2.修改时间方法2

修改时间顺序为月日时分年.秒

[root@tianyi ~]# date 090621282021.28
Mon Sep  6 21:28:28 CST 2021

3.硬件时间向系统时间同步

[root@node ~]# hwclock -w

4.按格式输出时间

[root@node ~]# date "+%Y-%m-%d %H:%M:%S"
2012-05-23 01:04:10

5.设置时区

[root@tianyi backups]# timedatectl list-timezones |grep Shanghai
Asia/Shanghai
[root@tianyi backups]# timedatectl set-timezone Asia/Shanghai

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • linux压缩解压命令使用方式(无废话版)

    linux压缩解压命令使用方式(无废话版)

    本文介绍了gzip、bzip2、tar和zip四种常用的文件压缩和打包工具的使用方法,包括它们的功能、压缩比率、使用场景以及基本命令示例
    2024-11-11
  • Linux中对lvm逻辑卷分区大小的调整教程(针对xfs与ext4不同文件系统)

    Linux中对lvm逻辑卷分区大小的调整教程(针对xfs与ext4不同文件系统)

    这篇文章主要给大家介绍了关于Linux中对lvm逻辑卷分区大小的调整教程(针对xfs与ext4不同文件系统)的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-10-10
  • Linux查看log日志常用命令

    Linux查看log日志常用命令

    Linux日志存储在/var/log目录中,我们可以编写脚本,来扫描这些日志,并基于它们的内容去自动执行某些功能,Linux查看日志的命令有多种: tail、head、cat、more、less、sed等
    2024-06-06
  • Ubuntu 16.04无法切换root权限问题的解决

    Ubuntu 16.04无法切换root权限问题的解决

    root权限相信对大家来说都不陌生,下面这篇文章主要给大家介绍了关于Ubuntu 16.04无法切换root权限问题的解决方法,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。
    2018-04-04
  • 80端口被占用导致Apache启动失败怎么解决

    80端口被占用导致Apache启动失败怎么解决

    80端口被占用导致Apache启动失败怎么解决,小编遇到很头疼的问题,下面为大家分享一篇关于80端口被占用导致Apache启动失败的文章,希望可以解决大家的问题
    2017-03-03
  • Nginx 0.7.x + PHP 5.2.6(FastCGI)+ MySQL 5.1 在128M小内存VPS服务器上的配置优化

    Nginx 0.7.x + PHP 5.2.6(FastCGI)+ MySQL 5.1 在128M小内存VPS服务器上的

    VPS(全称Virtual Private Server)是利用最新虚拟化技术在一台物理服务器上创建多个相互隔离的虚拟私有主机。它们以最大化的效率共享硬件、软件许可证以及管理资源。
    2008-12-12
  • linux docker仓库拉取失败问题及解决方案

    linux docker仓库拉取失败问题及解决方案

    这篇文章主要介绍了linux docker仓库拉取失败问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2025-10-10
  • Linux中如何查看文件的创建时间详解

    Linux中如何查看文件的创建时间详解

    这篇文章主要给大家介绍了关于Linux中如何查看文件的创建时间的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • linux centos7安装ftp及用户权限配置方式

    linux centos7安装ftp及用户权限配置方式

    文章介绍了如何配置用户登录后直接进入指定路径,并限制用户只能访问该路径,使用usermod命令设置默认目录,确保用户权限仅限于此目录,并具备写入文件的权限
    2026-05-05
  • Linux服务器选择什么版本好

    Linux服务器选择什么版本好

    服务器选择什么版本的linux,这个问题是个老生常谈的问题,每个月都有人讨论,根据我运维过1000台 server的经验,回答如下
    2014-03-03

最新评论