【物联网】基于树莓派的物联网开发【9】——树莓派修正系统时间五种解决方案
使用背景:
由于树莓派没有电池,断电后无法保存时间。
场景介绍:
树莓派新装系统后,往往系统时间与实际不符,故此我们需要校正树莓派系统时间与本地一致!
问题现状
打开终端输入命令:date,可以看到系统的日期时间,会比实际慢8小时
校正树莓派时间五种解决方案
方案1、立即校准时间
使用 sudo ntpdate cn.pool.ntp.org
命令同步网络时间。
方案2、强制设置时间
使用 sudo date --s "YYYY-MM-DD HH:MM:SS"
命令
(例如:sudo date --s “2025-07-15 14:00”)
方案3、修改时区,同步时间
(1)设置时区,终端输入命令:sudo dpkg-reconfigure tzdata
选择Asia
下拉选择Shanghai
ok,时间校验成功。
方案4:启用 NTP 服务
1、安装 ntpdate 工具
控制台输入下面命令,进行安装
sudo apt-get update
sudo apt-get install ntpdate
2、配置 /etc/ntp.conf
控制台输入下面命令
sudo nano /etc/ntp.conf
在文件中添加或修改服务器列表,例如:
server ntp1.aliyun.com
server ntp2.aliyun.com
server ntp3.a.shifen.com
保存并关闭文件。注意,对于 ntpdate,通常不需要修改 /etc/ntp.conf 文件,因为你可以直接在命令行中指定服务器。
3. 使用 ntpdate 同步时间
直接使用 ntpdate 命令同步时间到指定的 NTP 服务器。例如,使用阿里云的 NTP 服务器:
sudo ntpdate ntp1.aliyun.com
4、重启服务后即可自动同步
sudo systemctl start ntp
sudo systemctl enable ntp
方案5:外接实时时钟(RTC)
外接 DS1302 等 RTC 模块,通过 WiringPi 驱动实现断网环境下时间保持。需注意 VCC 与 DAT 引脚间加 10KΩ 上拉电阻,并确保使用 3.3V 供电。