开机时执行 Python 脚本

Execute Python script at boot

我正在尝试在启动时从 RaspberryPi 执行 python 脚本。

我注意到一些奇怪的事情:它可以工作,但我需要通过 SSH 连接到 Pi 才能 运行 和工作。

理想情况下,我希望能够在 Pi 上安装它 运行,并且我不必每次需要 运行 时都通过 SSH 连接到 Pi,因为它用于物联网项目。

我在 Pi 的 /etc/profile 文件中添加了这一行(在底部):

sudo python /{{path}}/{{script}}.py

然后我给了它755个权限。

我不明白的一点是为什么我需要 SSH 才能让它工作,我该如何更改它以便我不必这样做?

您应该在 "sudo python /{{path}}/{{script}}.py"

的末尾添加“&”
python /{{path}}/{{script}}.py &

这应该有效,因为“&”表示 rc.local 继续 运行,即使 script.py 也在执行。

EDIT:: 从代码中删除了 "sudo",因为 rc.local 以 root 身份运行并且不需要 "sudo" 命令。

最后,我解决了这个问题this guide here

主要步骤:

- create launcer.sh
- give launcher.sh 755 permissions
- sudo crontab -e
- @reboot sh /home/pi/bbt/launcher.sh >/home/pi/logs/cronlog 2>&1
- sudo reboot

而且效果很好。