首页 > 解决方案 > 无法从 rc.local 执行 python3 脚本

问题描述

Python 脚本一旦被执行,就无法在 rc.local 中工作。我的想法是在 Raspberry Pi 启动时运行脚本。

我已经用这句话测试了它。log.txt 文件仅在我手动执行程序时出现。

f = open("log.txt", "w")
f.write("log is working")
f.close()

在此之前,我曾尝试插入一个 time.sleep(30),以使用 usr/bin/python3,将脚本的头部#!/usr/bin/env python3更改为 ,将用户正在执行的程序更改为-u pi以及很多我不能甚至记得。

最后一句在 exit(0) 之前是

sudo /usr/bin/python3 /home/pi/script.py &

rc.local 在运行我在文件中创建的回显后立即工作。

标签: pythonpython-3.xraspberry-piraspbianrc

解决方案


最后我遇到的问题是脚本需要网络,所以我将它添加到crontab -e.

它仍然不起作用,所以我更改了 raspi-config,因为有一个网络等待网络选项,但没有成功。

最后,由于该解决方案也不起作用,我在命令中添加了一个 sleep ,如下所示等待网络:

@reboot sleep 40 && /usr/bin/python3 /home/pi/script.py 

这终于奏效了。


推荐阅读