Raspberry-pi 在编程重启后不断重启

Raspberry-pi reboots constantly after programmed reboot

我们有一个树莓派 运行 一个 python WSGI。在 cron 中安排了每日重启:

0 9 * * * reboot

树莓派配置为以只读模式启动。

当我们在写入模式更新软件时发生重启,树莓派进入每分钟重启的循环。如果我们在下次重新启动之前设法连接并再次更改为 写入模式 ,则此行为将停止。

为什么会发生这种情况,如何避免?

我们找到了问题的原因,部分解决方案和完整解决方案,但涉及为树莓派购买硬件。

问题

重启瞬间,系统将当前时间戳记为最后有效时间。这只有在我们设置写模式时才有可能。重启后,树莓派使用最后一个有效时间作为当前时间,而无法从 NTC 服务器获取实时时间。由于计划在此时启动,因此设备会再次重新启动。

如果在重启前有新时间可用于写入,则在下次重启前将树莓派设置为写入模式可以解决此问题。

部分解决方案

不使用重启,而是使用 shutdown -r 来延迟重启时间。

0 9 * * * shutdown -r 5

这将避免写入预定的重启时间。

完整的解决方案

给树莓派买一个NTC模块,让设备随时知道实时时间。