开机时执行 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
而且效果很好。
我正在尝试在启动时从 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
而且效果很好。