1

我有一个 python3 程序,我在使用 ssh 连接的无头树莓派配置上运行没有任何问题。我登录到我的 pi,启动 tmux 会话,然后运行程序。它将无限期地运行。在开发过程中发生异常时,python 程序将终止并且我会看到错误信息。

现在,如果我不在时我的 pi 重新启动,我希望它自动运行该程序。我实施了以下步骤来实现这一点:

我创建了一个包含这一行的脚本:

tmux new-session -d -s xbnw 'python3 /home/pi/python/XbNWSer05.py'

然后我修改/etc/rc.local为包括这一行:

sudo -u pi bash /home/pi/tmux_xbnw.sh

现在,当我重新启动我的 pi 时,一切正常运行了几分钟。该程序显然正在运行。我可以登录并附加到会话并查看我的调试输出,一切看起来都很好。

几分钟后,虽然出了点问题,如果我登录并连接到 tmux 会话,我突然发现自己在命令提示符下,就好像程序从未运行过一样。tmux 会话也不再活动。没有迹象表明发生了什么。

1)我是否不正确地启动了我的程序?2)如果是这样,有没有办法弄清楚发生了什么?

4

1 回答 1

0

添加一个日志文件,可以手动修改,也可以使用logger 模块。然后,您可以了解程序是否启动,并且您可以每分钟左右记录一次,以查看它何时死亡以及最后的状态是什么。

您还可以检查系统日志是否有重新启动。我的电源线坏了,这让我的 Pi 在过去重新启动...

于 2019-07-26T21:49:56.593 回答