centos时间不正确解决

检查当前系统时间

bash 复制代码
date

如果时间明显不正确,可以进一步检查硬件时钟(BIOS 时间):

bash 复制代码
bash复制代码

hwclock --show

同步时间(推荐方式)

为了确保系统时间准确,建议使用 NTP(网络时间协议)服务同步时间。

1. 安装和启动 chronyd 或 ntpd
  • CentOS 7 及以上版本默认使用

    复制代码
    chronyd

    :

    bash 复制代码
    sudo yum install -y chrony
    sudo systemctl enable chronyd
    sudo systemctl start chronyd
  • 如果需要使用

    复制代码
    ntpd

    (旧版本 CentOS 可能使用):

    bash 复制代码
    sudo yum install -y ntp
    sudo systemctl enable ntpd
    sudo systemctl start ntpd
2. 验证时间同步状态
  • 对于 chronyd:

    bash 复制代码
    bash复制代码
    
    chronyc tracking

    检查 Reference ID 是否为有效的 NTP 服务器地址。

  • 对于 ntpd:

    bash 复制代码
    bash复制代码
    
    ntpq -p

    检查输出中是否有 * 标记的 NTP 服务器。

3. 强制手动同步时间
  • 对于

    复制代码
    chronyd

    :

    bash 复制代码
    bash复制代码
    
    sudo chronyc -a makestep
  • 对于

    复制代码
    ntpd

    :

    bash 复制代码
    bash复制代码
    
    sudo ntpdate pool.ntp.org

检查时区设置

如果时间正确但时区不正确,可以调整时区:

  1. 查看当前时区:

    bash 复制代码
    bash复制代码
    
    timedatectl

    示例输出:

    复制代码
    Local time: Wed 2023-10-11 10:00:00 UTC
    Time zone: UTC (UTC, +0000)
  2. 列出所有可用时区:

    bash 复制代码
    bash复制代码
    
    timedatectl list-timezones
  3. 设置时区(例如设置为上海时区):

    bash 复制代码
    bash复制代码
    
    sudo timedatectl set-timezone Asia/Shanghai
  4. 验证时区设置:

    bash 复制代码
    bash复制代码
    
    timedatectl

硬件时钟与系统时钟同步

如果系统时间和硬件时间不一致,可以手动同步:

  1. 将系统时间写入硬件时钟:

    bash 复制代码
    bash复制代码
    
    sudo hwclock --systohc
  2. 将硬件时钟写入系统时间:

    bash 复制代码
    bash复制代码
    
    sudo hwclock --hctosys

排查时间不同步问题

如果时间仍然不同步,可以检查以下内容:

  1. 网络连接:确保服务器可以访问 NTP 服务器。

    • 测试网络连通性:

      bash 复制代码
      bash复制代码
      
      ping pool.ntp.org
  2. 防火墙设置:确保防火墙允许 NTP 流量(UDP 123 端口)。

    • 开放端口:

      bash 复制代码
      sudo firewall-cmd --add-port=123/udp --permanent
      sudo firewall-cmd --reload
  3. SELinux 设置:如果启用了 SELinux,确保没有阻止时间同步服务。

  4. 检查日志:查看 NTP 或 Chrony 的日志文件以获取更多信息。

    • Chrony 日志:

      bash 复制代码
      bash复制代码
      
      sudo journalctl -u chronyd
    • NTP 日志(如果使用

      复制代码
      ntpd

      ):

      bash 复制代码
      bash复制代码
      
      sudo tail -f /var/log/ntp.log

总结常用命令

操作 命令
查看当前系统时间 date
手动设置系统时间 sudo date -s "2023-10-11 10:00:00"
安装和启动 chronyd sudo yum install -y chrony && sudo systemctl enable chronyd && sudo systemctl start chronyd
强制同步时间(chronyd) sudo chronyc -a makestep
列出所有可用时区 timedatectl list-timezones
设置时区 sudo timedatectl set-timezone Asia/Shanghai
将系统时间写入硬件时钟 sudo hwclock --systohc
相关推荐
Decay__2 小时前
05_MySQL 常用 SQL 大全 —— 诊断、管理、优化辅助 SQL 与三大系统库速查
运维·数据库·sql·mysql·架构
贞明电子4 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
HideF5 小时前
Linux
linux·服务器·网络
万联WANFLOW5 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
Ruiery7 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
Decay__8 小时前
04_MySQL DBA 日常运维手册 —— 会话管理、锁与阻塞、事务监控、慢查询与日志巡检
运维·数据库·sql·mysql·架构
丰锋ff9 小时前
压缩命令笔记
linux
江华森9 小时前
数据中心基础设施运维实战:概述与实验环境搭建
运维
迪菲赫尔曼9 小时前
【基础篇 11】把官方源码放到服务器:版本、解压层级和安装位置,一次弄清楚
运维·服务器·开发语言·人工智能·python·yolo·目标检测
GeW10 小时前
产业新优势基础软件的人才底盘,从Linux与数据库开始
linux·数据库