Linux 时间设置与同步完整指南
1️⃣ 查看当前时间状态(必做)
date
timedatectl status
重点关注:
-
Local time(本地时间)
-
UTC time(标准时间)
-
RTC time(硬件时间)
-
System clock synchronized(是否同步)
2️⃣ 设置时区(非常重要)
查看时区:
timedatectl list-timezones
设置时区(示例:中国/美国):
sudo timedatectl set-timezone Asia/Shanghai
sudo timedatectl set-timezone America/Los_Angeles
3️⃣ 开启自动时间同步(NTP)
方法A(系统自带 timedatectl)
sudo timedatectl set-ntp true
检查:
timedatectl status
方法B(推荐:chrony,高精度)
安装:
sudo apt update
sudo apt install chrony -y
(CentOS/RHEL)
sudo yum install chrony -y
启动服务(Debian 正确写法)
sudo systemctl enable --now chrony
强制同步时间:
sudo chronyc makestep
查看同步状态:
chronyc tracking
chronyc sources -v
4️⃣ 手动修改系统时间(临时用)
sudo date -s "2026-06-02 13:30:00"
5️⃣ 同步系统时间到硬件(RTC)
sudo hwclock --systohc
6️⃣ 从硬件时间恢复系统时间
sudo hwclock --hctosys
7️⃣ 修复时间错误(常见故障)
🔴 系统时间漂移 / 不同步
sudo systemctl restart chrony
sudo chronyc makestep
🔴 NTP失败时强制修复
sudo ntpdate pool.ntp.org
🔴 RTC 与系统时间严重不一致
优先选择:
sudo hwclock --hctosys
或:
sudo date -s "正确时间"
sudo hwclock --systohc
8️⃣ 常见状态判断(很重要)
✔ 正常状态:
System clock synchronized: yes
RTC in local TZ: no
❌ 异常状态:
-
RTC 比系统时间快/慢很多
-
NTP 未同步
-
chrony 未运行
9️⃣ 一键修复流程(推荐)
如果时间乱了,按这个顺序:
# 1. 设置时区
timedatectl set-timezone Asia/Shanghai
# 2. 启动 NTP
timedatectl set-ntp true
# 3. 安装 chrony
apt install chrony -y
# 4. 启动 chrony
systemctl enable --now chrony
# 5. 强制同步
chronyc makestep
# 6. 写入硬件时间
hwclock --systohc
🔚 总结核心逻辑
Linux 时间体系本质是三层:
互联网时间(NTP)
↓
系统时间(System Clock)
↓
硬件时间(RTC BIOS)
👉 正确做法永远是:
NTP负责同步系统时间 → 再写入RTC
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
