【linux】ARM开发板上设置RTC时间,断电重启后,设置失效的原因分析

142 篇文章 25 订阅 ¥69.90 ¥99.00
在Linux ARM开发板上,通过date命令设置RTC时间并使用hwclock -w同步后,断电重启可能会失效。问题源于关机或重启时保存的时间戳,若在断电重启后该时间戳大于期望的RTC时间,启动脚本会将时间戳写回RTC,导致错误。解决办法是确保执行halt或reboot以正确保存时间。
摘要由CSDN通过智能技术生成

问题描述

linux中使用date设置时间后用hwclock -w同步到RTC,断电重启后,有时会失效

原因分析

保存时间戳

1、使用命令关机(halt)会调用rc0.d中的脚本;
2、使用命令重启(reboot)会调用rc6.d中的脚本;
3、其中都有脚本S25save-rtc.sh,S25save-rtc.sh是对 …/init.d/save-rtc.sh的软连接;
4、save-rtc.sh脚本内容:

date -u +%4Y%2m%2d%2H%2M%2S > /etc/timestamp
使用时间戳

1、启动内核后启动第一个程序init,init调用脚本/etc/inittab

2、inittab中启动的第一个脚本是:/etc/init.d/rcS

  7 # Boot-time system configuration/initialization script.
  8 # This is run first except when booting in emergency (-b) mode.
  9 si::sysinit:/etc/init.d/rcS

3、init.d/r

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郭老二

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值