我想在raspberry pi中启动我的python代码。
我尝试了rc.local,。/ batrc,但启动程序正在运行&我正在使用opencv + camera + voice命令。那不能正常启动。
请给我一个在启动时运行语音+摄像头+ opencv + python代码的方法。
答案 0 :(得分:0)
我建议将其作为以下文章的方法4中提到的服务运行:
https://www.dexterindustries.com/howto/run-a-program-on-your-raspberry-pi-at-startup/
步骤1-创建单元文件
使用如下命令打开样本单元文件:
sudo nano /lib/systemd/system/sample.service
添加以下文字:
[Unit]
Description=My Sample Service
After=multi-user.target
[Service]
Type=idle
ExecStart=/usr/bin/python /home/pi/sample.py
[Install]
WantedBy=multi-user.target
您应该保存并退出nano编辑器。
这定义了一个名为“Sample Service”的新服务,我们要求在多用户环境可用后启动它。 “ExecStart”参数用于指定我们要运行的命令。 “Type”设置为“idle”以确保ExecStart命令仅在其他所有内容都已加载时运行。请注意,路径是绝对的,并定义了Python的完整位置以及Python脚本的位置。
为了将脚本的文本输出存储在日志文件中,您可以将ExecStart行更改为:
ExecStart=/usr/bin/python /home/pi/sample.py > /home/pi/sample.log 2>&1
单位文件的权限需要设置为644:
sudo chmod 644 /lib/systemd/system/sample.service
第2步 - 配置systemd
现在已经定义了单元文件,我们可以告诉systemd在引导序列期间启动它:
sudo systemctl daemon-reload
sudo systemctl enable sample.service
重新启动Pi,您的自定义服务应该运行:
sudo reboot