当前位置: 首页 > article >正文

CentOS使用chrony服务进行时间同步源设置脚本

CentOS使用chrony服务进行时间同步源设置脚本

#!/bin/bash

# Created: 2024-11-26
# Function: Check and Set OS time sync source to 10.0.11.100
# FileName: centos_set_time_source_to_ad.sh
# Creator: Anster
# Usage:
#   curl http://webserver-ip/scripts/centos_set_time_source_to_ad.sh | bash

timeserver='10.0.11.100'
rpm -qi chrony > /dev/null 2>&1
if [ $? -ne 0 ]; then
    echo "Install chrony package for time sync service"
    yum install -y chrony
else
    echo "chrony service already installed"
fi
chronyc sources | grep "${timeserver}" > /dev/null 2>&1
if [ $? -eq 0 ]; then
    echo "time sync source already set to ${timeserver}"
else
   # set time sync source to ad
   sed -i '/^server [0-3]\./s/^/#/' /etc/chrony.conf 
   sed -i "/^#server 3\./a server ${timeserver} iburst" /etc/chrony.conf 
   echo "finish set time source to ${timeserver}"

   # restart chronyd service
   systemctl restart chronyd
   systemctl status chronyd
   chronyc sources
fi

脚本概述

这个 Shell脚本用于在 CentOS 服务器上检查并设置时间同步源。它会将时间同步源设置为指定的服务器(10.0.11.100)。

功能说明

  1. 检查并安装 chrony 包(如果尚未安装)
  2. 验证当前时间同步源
  3. 如果需要,将时间同步源修改为指定服务器
  4. 重启 chronyd 服务并验证设置

使用方法

远程执行(推荐)

使用以下命令直接从 Web 服务器下载并执行脚本:

curl http://webserver-ip/scripts/centos_set_time_source_to_ad.sh | bash

注意:请将 webserver-ip 替换为实际的 Web 服务器 IP 地址。

本地执行

  1. 下载脚本到本地:
       bash    curl -O http://webserver-ip/scripts/centos_set_time_source_to_ad.sh    

  2. 赋予脚本执行权限:
       bash    chmod +x centos_set_time_source_to_ad.sh    

  3. 执行脚本:
       bash    ./centos_set_time_source_to_ad.sh    

脚本主要操作说明

  1. 检查 chrony 包
       - 使用 rpm -qi chrony 命令检查 chrony 包是否已安装
       - 如果未安装,使用 yum install -y chrony 安装

  2. 检查时间同步源
       - 使用 chronyc sources 命令检查当前时间同步源
       - 如果已设置为指定服务器(10.0.11.100),脚本将退出

  3. 修改时间同步源
       - 如需修改,脚本会编辑 /etc/chrony.conf 文件
       - 注释掉默认的服务器设置
       - 添加新的服务器设置(10.0.11.100)

  4. 重启服务
       - 重启 chronyd 服务
       - 检查服务状态
       - 验证新的时间同步源设置

注意事项

  • 执行脚本需要 root 权限
  • 确保服务器能够访问指定的时间同步服务器(10.0.11.100)
  • 脚本执行可能会短暂影响系统时间同步,请在适当的时间执行
  • 建议在执行脚本前备份 /etc/chrony.conf 文件

故障排除

如果脚本执行后时间同步仍有问题,请检查:

  1. 网络连接是否正常
  2. 防火墙是否允许 NTP 流量(UDP 端口 123)
  3. 时间同步服务器(10.0.11.100)是否可用

可以使用 chronyc tracking 命令查看详细的同步状态。


http://www.kler.cn/a/418885.html

相关文章:

  • 【C语言】二叉树(BinaryTree)的创建、3种递归遍历、3种非递归遍历、结点度的实现
  • 系统监控——分布式链路追踪系统
  • 详解QtPDF之 QPdfLink
  • 组播基础实验
  • Spring Web开发(请求)获取JOSN对象| 获取数据(Header)
  • Cursor AI快捷键的使用场景及作用
  • CSS3网站
  • 欧拉函数——acwing
  • 挑战用React封装100个组件【005】
  • 【linux】(23)对象存储服务-MinIo
  • Linux 僵尸进程和孤儿进程, 进程优先级
  • Android 12.0新增自定义HIDL问题记录
  • 内网穿透步骤
  • Spring Data JPA(二) 高级进阶
  • linux——进程间通信及管道的应用场景
  • 蓝桥杯经验分享
  • 医院分诊管理系统|Java|SSM|VUE| 前后端分离
  • 2. STM32_中断
  • 深入理解 PyTorch .pth 文件和 Python pickle 模块:功能、应用及实际示例
  • 前端学习week8——vue.js
  • 支持向量机算法:原理、实现与应用
  • LeetCode题解:34.在排序数组中查找元素的第一个和最后一个位置【Python题解超详细,二分查找法、index法】,知识拓展:index方法详解
  • [MySQL]流程控制语句
  • SpringCloud书单推荐
  • 深度学习常见数据集处理方法
  • 爬虫专栏第一篇:深入探索爬虫世界:基础原理、类型特点与规范要点全解析