树莓派实现开机自启脚本的方式(包含带有图形界面的脚本)
树莓派如果是带桌面版本,并且脚本带GUI显示,如脚本内执行cv2.show(),设置开机自启脚本会报错qt.qpa.xcb: could not connect to display…原因是脚本依赖图形界面,最好通过 LXDE 桌面自启动。1.创建rc.local文件。方法一:脚本不带GUI。方法二:脚本带GUI。
·
方法一:脚本不带GUI
1.创建rc.local文件
sudo nano /etc/rc.local
写入以下内容:
#!/bin/sh -e
# 等待网络就绪等的延时(可去掉)
# sleep 10
# 命令写在 exit 0 之前
# su - pi -c 'python3 /home/pi/device_code-main/test/test_lcd/1inch54_LCD_test.py &' # 以pi用户运行,&表示后台执行
# su - pi -c 'python3 /home/pi/device_code-main/test/test_camear_show.py &'
su - pi -c 'python3 /home/pi/device_code-main/test/test_camear_show.py >> /home/pi/script.log 2>&1 &' # 将输出重定向到日志文件
exit 0 # 必须保留!
2.赋予可执行权限,否则不会执行:
sudo chmod +x /etc/rc.local
3.重启测试:
sudo reboot
方法二:脚本带GUI
树莓派如果是带桌面版本,并且脚本带GUI显示,如脚本内执行了cv2.imshow(“Camera”, frame),按照方法一设置开机自启脚本会报错qt.qpa.xcb: could not connect to display…,
原因是脚本依赖图形界面,最好按方法二通过 LXDE 桌面自启动。
1.创建 .desktop 文件:
mkdir -p ~/.config/autostart
nano ~/.config/autostart/your_script.desktop
写入以下内容:
[Desktop Entry]
Type=Application
Name=My Python Script
Exec=python3 /home/pi/device_code-main/test/test_camear_show.py
如需添加终端命令行用于调试,最后一行改为:
Exec=lxterminal -e "python3 /home/pi/device_code-main/test/test_camear_show.py"
2.赋予可执行权限:
chmod +x ~/.config/autostart/your_script.desktop
3.重启测试:
sudo reboot
更多推荐

所有评论(0)