如何查看openwrt系统的时间是否自动同步?

快速结论前置:你可通过命令行检查服务状态+配置+同步结果,也可通过LuCI网页界面快速查看;优先用命令行定位问题更高效。以下是完整步骤与解读。


一、命令行查看(最准确,推荐)

1. 检查NTP自动同步服务(sysntpd)状态

OpenWRT默认用sysntpd(busybox-ntpd)提供NTP自动同步,执行:

/etc/init.d/sysntpd status

✅ 正常输出(已启用+运行中)

running

❌ 异常输出

  • stopped:服务未运行,自动同步关闭;
  • 无返回/报错:服务可能未安装(可通过opkg install ntpd安装)。

2. 检查NTP自动同步是否开机自启

执行:

/etc/init.d/sysntpd enabled

✅ 正常输出(开机自启)

无报错且返回0;

❌ 异常输出(未自启)

返回非0值或提示未启用。

3. 查看NTP配置(是否启用自动同步)

OpenWRT用uci管理配置,执行:

uci show system.ntp

✅ 正常配置(自动同步已开启)

system.ntp=timeserver
system.ntp.enabled='1'  # 1=启用,0=禁用
system.ntp.server='0.openwrt.pool.ntp.org' '1.openwrt.pool.ntp.org'  # NTP服务器列表
system.ntp.enable_server='0'  # 是否作为NTP服务器,不影响客户端同步

❌ 异常配置

system.ntp.enabled='0':自动同步被关闭。

4. 验证时间同步结果(核心)

方法A:检查系统时间与标准时间

执行:

date

对比当前标准时间(如手机/电脑时间),看是否一致;

方法B:查看NTP同步状态(详细)

  • 若用默认ntpd,执行:
    ntpd -n -d -p pool.ntp.org  # 临时测试同步
  • 若安装了chrony(高级NTP工具),执行:
    chronyc sources -v  # 查看时间源状态
    chronyc tracking    # 查看同步跟踪信息

    正常时,chronyc sources -v会显示带^*的优先时间源,代表已成功同步。

5. 查看系统时间同步日志(排查问题)

查看系统日志中NTP相关记录:

logread | grep ntp
logread | grep sysntpd

可看到时间同步的成功/失败记录、服务器连接情况等。

6. 验证时间同步状态(终极确认)

结合之前的时间差异问题(日志中time disparity of 1331 minutes),执行:

ntpd -q -p pool.ntp.org  # 强制立即同步时间
date  # 再次检查时间

同步成功后,系统时间应与标准时间一致,无明显偏差。


二、LuCI网页界面查看(图形化,适合新手)

  1. 登录OpenWRT的LuCI后台(通常是http://192.168.1.1);
  2. 进入:系统 → 系统 → 时区与时间;
  3. 查看“网络时间同步”部分:
    • ✅ 勾选了“启用网络时间同步”:自动同步已开启;
    • ✅ “NTP服务器”列表非空:配置正常;
    • ✅ 下方显示当前系统时间与NTP服务器时间一致:同步正常;
    • ❌ 未勾选/服务器列表为空:自动同步未启用。

三、补充:硬件时钟(RTC)与系统时间的关系

OpenWRT默认系统时间依赖NTP同步(多数路由器无RTC/电池,断电后时间丢失),执行:

hwclock -r  # 查看硬件时钟
date        # 查看系统时间
  • 无RTC的设备:hwclock可能报错或返回异常时间,属于正常;
  • 有RTC的设备:hwclock应与date接近(系统启动后NTP会校准硬件时钟)。

四、如何修复时间不同步问题(快速处理)

1. 启用并启动NTP自动同步

uci set system.ntp.enabled='1'  # 启用NTP自动同步
uci commit system               # 保存配置
/etc/init.d/sysntpd enable      # 设置开机自启
/etc/init.d/sysntpd start       # 立即启动服务

2. 强制立即同步时间(解决当前时间偏差)

ntpd -q -p pool.ntp.org  # 强制同步,-q表示同步后退出

3. 验证修复结果

执行:

/etc/init.d/sysntpd status
date

确保服务运行,且系统时间与标准时间一致。


五、总结

判断OpenWRT系统时间是否自动同步,核心看3点:

  1. sysntpd服务是否运行(/etc/init.d/sysntpd status);
  2. sysntpd是否开机自启(/etc/init.d/sysntpd enabled);
  3. NTP配置中enabled是否为1(uci show system.ntp)。

三者均正常,且系统时间与标准时间一致,即代表自动同步正常。

需要我补充一份在 OpenWRT 中用 chrony 替代默认 ntpd 的安装+配置+状态检查步骤(适合需要更高同步精度的场景)吗?

赞(0) 支付宝扫码领红包
未经允许不得转载:易语言编程学习 » 如何查看openwrt系统的时间是否自动同步?

评论 抢沙发

评论前必须登录!

 

有几率领到大红包

支付宝扫一扫