在 CentOS 系统中,**时间戳不准(系统时间不对)**通常由以下几类原因导致,从最常见到较少见依次说明:
CentOS 默认不会自动同步时间,如果没配置 NTP:
都会导致时间漂移。
检查:
timedatectl
看:
NTP enabled: 是否为 yesSystem clock synchronized: 是否为 yes解决(CentOS 7/8/Stream):
yum install -y chrony
systemctl enable --now chronyd
timedatectl set-ntp true
如果是 VMware / KVM / Hyper-V / 云服务器:
VMware 示例:
vmware-toolbox-cmd timesync enable
KVM / 云平台:
确保使用 chrony 或 ntpd
有时时间戳本身是对的,只是时区显示错误。
timedatectl
如果是:
Time zone: UTC
但你在中国,就会差 8 小时。
修改时区:
timedatectl set-timezone Asia/Shanghai
系统启动时会从 BIOS/CMOS 读取时间。
查看硬件时间:
hwclock
同步系统时间到硬件:
hwclock --systohc
CentOS 默认硬件时钟是 UTC,Windows 是 Local
如果双系统,会互相改坏时间。
修改:
timedatectl set-local-rtc 1
systemctl status ntpd
firewall-cmd --list-all
有时不是系统时间错,而是:
CST / UTC 混用Docker 示例:
docker run -v /etc/localtime:/etc/localtime:ro
timedatectl
date
hwclock
systemctl status chronyd
yum install -y chrony
systemctl enable --now chronyd
timedatectl set-timezone Asia/Shanghai
timedatectl set-ntp true
如果你愿意,可以贴一下:
cat /etc/redhat-release)timedatectl 输出我可以帮你精准定位是哪一类问题。