Linux 时钟同步配置:基础管理与 chrony 工具应用

Linux 时钟同步配置:基础管理与 chrony 工具应用

一、 基础时间管理操作

1.1 时间与状态查看

使用 timedatectl 命令可直接查看系统当前的时间、时区设置及 NTP 同步状态,输出信息包括本地时间、UTC 时间、时区、是否启用 NTP 同步等。

1.2 时区配置
  • 列出系统所有可用时区:

    bash 复制代码
    timedatectl list-timezones
  • 设置指定时区(以上海时区为例):

    bash 复制代码
    timedatectl set-timezone "Asia/Shanghai"
2.1.3 手动修改系统时间
  • 使用 timedatectl 命令修改:

    bash 复制代码
    timedatectl set-time "YYYY-MM-DD hh:mm:ss"

    示例:timedatectl set-time "2024-07-01 10:30:00"

  • 或使用 date 命令直接设置:

    bash 复制代码
    date -s "YYYY-MM-DD hh:mm:ss"

    示例:date -s "2024-07-01 10:30:00"

二、 chrony 时间同步工具配置

chrony 是一款高效的网络时间同步工具,基于 UDP 协议(使用 323 端口)运行,由后台服务进程 chronyd 和命令行管理工具 chronyc 组成。需注意,chronyntpd 不可同时运行。

2.1 服务端配置(作为时间源)
  1. 安装 chrony

    bash 复制代码
    yum -y install chrony
  2. 修改配置文件

    编辑 /etc/chrony.conf,添加以下配置:

    conf 复制代码
    local stratum 10  # 不同步外部时间,自身作为时间源(stratum 为层级标识)
    allow 172.16.30.0/24  # 允许 172.16.30.0/24 网段的主机同步本服务器时间
  3. 启动并设置开机自启

    bash 复制代码
    systemctl restart chronyd
    systemctl enable chronyd
  4. 配置防火墙规则

    允许 NTP 服务通过防火墙(默认使用 123 端口):

    bash 复制代码
    firewall-cmd --add-service=ntp --permanent
    firewall-cmd --reload
2.2 客户端配置(同步服务端时间)
  1. 安装 chrony

    bash 复制代码
    yum -y install chrony
  2. 指定时间同步源

    编辑 /etc/chrony.conf,添加服务端地址:

    conf 复制代码
    server 172.16.30.20 iburst  # 向 172.16.30.20 服务器同步时间(iburst 表示快速初始同步)
  3. 重启服务

    bash 复制代码
    systemctl restart chronyd
  4. 验证同步状态

    • 查看时间同步源信息:

      bash 复制代码
      chronyc sources
    • 查看同步源详细状态(如延迟、偏差):

      bash 复制代码
      chronyc sourcestats -v
  5. 持久化系统时间

    将当前系统时间写入硬件时钟(防止重启后时间丢失):

    bash 复制代码
    hwclock -w
相关推荐
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒1 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
蝎子莱莱爱打怪4 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes