您的位置:首页 >Ubuntu如何配置系统自动更新时间
发布于2026-08-11 阅读(0)
扫一扫,手机访问
Ubuntu通常默认启用systemd-timesyncd,但实际使用中,timedatectl经常会显示“System clock synchronized: no”。问题往往不复杂,常见原因无非几类:NTP服务器不可达、防火墙拦截了UDP 123端口、时区或RTC配置有误,另外还要留意是否与chrony或ntpd发生了冲突。处理时,重点就是逐项排查服务状态、修正相关配置文件、确认网络链路畅通。

Ubuntu 默认已启用 NTP 自动时间同步,但很多用户发现 timedatectl 显示 System clock synchronized: no,或时间偏差明显——这通常不是“没开”,而是服务未生效、配置被覆盖、或时区/硬件时钟混乱导致的假性失效。
Ubuntu 20.04+ 桌面和服务器版默认启用 systemd-timesyncd,但它不等于“一定在工作”。常见失效场景:
systemd-timesyncd 会拒绝同步(防止雪崩式漂移)sudo timedatectl set-ntp false,但忘了再设回 true验证方式:运行 timedatectl,重点看两行:
System clock synchronized: yes NTP service: active
如果都是 no 或 inactive,先执行:sudo timedatectl set-ntp true,再等 30 秒重查。别急着装 chrony——多数问题就卡在这一步。
系统默认用 time.google.com 和 time.windows.com,但国内访问不稳定,容易超时失败。直接改配置文件最可靠:
/etc/systemd/timesyncd.conf,取消 [Time] 下 NTP= 行的注释NTP=ntp.aliyun.com ntp1.aliyun.comFallbackNTP= 可留空,或填 pool.ntp.org 作兜底sudo systemctl restart systemd-timesyncd注意:不要混用 ntpd 或 chrony ——它们会抢占 UDP 123 端口,导致 systemd-timesyncd 启动失败并静默退出。
即使网络时间同步成功,如果硬件时钟存的是 UTC 而系统按本地时间读取(或反过来),date 命令显示的时间仍可能偏差 8 小时。这不是同步失败,是解释逻辑冲突:
timedatectl | grep "Time zone",确认是 Asia/Shanghaisudo timedatectl set-timezone Asia/Shanghaitimedatectl | grep "RTC in local TZ",输出应为 no(即 RTC 存 UTC)yes,运行:sudo timedatectl set-local-rtc false这个设置影响重启后时间恢复逻辑,错一次,下次开机就倒退 8 小时。
网上大量教程教你在 crontab 里写 ntpdate ntp.ubuntu.com,这在现代 Ubuntu 上属于危险操作:
ntpdate 是单次强制校正,会瞬间跳变时间,可能中断正在运行的数据库、日志服务或 TLS 会话ntpdate,需额外安装,且与 systemd-timesyncd 冲突真正需要“更高精度”或“低延迟同步”的场景(如金融交易服务器),才该换用 chrony 并关闭 systemd-timesyncd;普通桌面或 Web 服务器,坚持用默认服务即可。
最容易被忽略的点:时间同步依赖网络可达性,而很多云服务器安全组默认禁 UDP 123。开个端口,比换工具管用得多。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9