温馨提示×

CentOS怎样替换系统时间

小樊
77
2026-07-09 07:36:35
栏目: 智能运维

在 CentOS 中替换(修改)系统时间,常见有 临时修改永久修改(使用 NTP)手动设置硬件时间 几种方式。下面按常见场景说明。


一、临时修改系统时间(立即生效,重启后失效)

1️⃣ 使用 date 命令

date -s "2026-01-21 15:30:00"

然后同步到硬件时钟:

hwclock --systohc

二、永久修改系统时间(推荐方式)

✅ 方法一:使用 NTP 自动同步(最推荐)

CentOS 7 / 8 / Stream

timedatectl set-ntp true

查看状态:

timedatectl status

如果未安装 NTP 服务:

yum install -y chrony
systemctl enable chronyd
systemctl start chronyd

✅ 方法二:手动设置时间并固化(不使用 NTP)

1️⃣ 关闭 NTP

timedatectl set-ntp false

2️⃣ 设置系统时间

timedatectl set-time "2026-01-21 15:30:00"

3️⃣ 同步到硬件时间

hwclock --systohc

三、修改时区(常见需求)

查看当前时区:

timedatectl

列出时区:

timedatectl list-timezones

设置时区(例如上海):

timedatectl set-timezone Asia/Shanghai

四、只修改硬件时间(不推荐)

hwclock --set --date="2026-01-21 15:30:00"
hwclock --hctosys

五、常见问题排查

❓ 时间改了但重启又恢复

  • 可能是:
    • NTP 服务仍在运行
    • 虚拟机使用了宿主机时间同步

解决:

timedatectl set-ntp false
systemctl disable chronyd

❓ 虚拟机时间不准

  • VMware / VirtualBox 通常会在启动时同步宿主机时间
  • 需要关闭虚拟机的时间同步功能

六、总结(推荐做法)

场景 推荐方式
生产服务器 NTP(chrony)
测试环境 timedatectl set-time
临时调整 date -s
时区错误 timedatectl set-timezone

如果你能告诉我:

  • ✅ CentOS 版本(6 / 7 / 8 / Stream)
  • ✅ 是物理机还是虚拟机
  • ✅ 是否需要离线环境

我可以给你 最合适的一套命令方案

0