我有一个python脚本,其中包含一个True True:我希望在运行Jessie的覆盆子pi上启动时运行。
到目前为止,我在/etc/init.d中有一个名为startup.sh的启动bash脚本,其中包含
sudo python3 /home/pi/Desktop/Scripts/bluez3.py& amp;
当raspberry pi启动时,脚本会运行但20分钟后脚本似乎停止了。我已登录我的脚本,时间戳正好停止了20分钟。
我做了一些阅读,我认为最好的选择是在树莓派上创建python脚本作为服务。但是,我还没有找到一个关于如何做到这一点的体面教程(以及我缺乏python知识)。
我的问题是,有没有其他方法可以解决我的问题,或者是否有人知道如何将python脚本变成服务的好教程。
谢谢!
答案 0 :(得分:1)
鉴于你的剧本名称,我猜它与一些蓝牙的东西有关。很可能在20分钟之后,无论您在脚本中检查/需要什么都无法访问并抛出异常或其他类似内容。就像被锁定的资源,或bt设备断开连接或模块被卸载或不可用或[在此处插入边缘案例] ......
话虽如此,在创建系统服务之间,您可以先使用距离apt install supervisor
supervisorctl
的https://www.aspsnippets.com/Articles/SqlBulkCopy--Bulk-Insert-records-and-Update-existing-rows-if-record-exists-using-C-and-VBNet.aspx进行游戏。
然后,如果您真的想将其作为服务推出,可以在/lib/systemd/system/*.service
中找到大量示例,如下所示:
[Unit]
Description=Your service
Wants=
After=bluetooth.target # I guess you need bluetooth initialised first
[Service]
ExecStart=/usr/bin/python3 /home/pi/Desktop/Scripts/bluez3.py
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target
我是从sshd.service
文件