1. 向rc.local文件添加启动代码
修改rc.local文件,在终端输入并回车:
pi@raspberry:~ $ sudo vi /etc/rc.local
在打开的文件中找到exit 0,在此之前添加的代码在启动时都会被执行,在exit 0 之前添加的代码开机会自动运行。
su pi -c “touch /home/pi/script_test1”
如:
cd /home/pi/bubble3d/raspberry-detect_local_ui # 转到文件夹下,不然会找不到model
sudo -H -u pi /usr/bin/python3 /home/pi/bubble3d/raspberry-detect_local_ui/auto_grab.py # 需要指定用户名,不然会好不到moudle
su命令是指定在pi用户下执行这条命令,-c 表示执行完这条命令之后恢复原来的用户。
:wq保存退出,然后在终端输入:sudo reboot ,重启系统测试。
注意:系统启动时在执行这段代码时是使用root用户权限的,如果不指定pi用户,可能会因为权限问题导致脚本执行失败。
2. linux下编辑文件的基础知识
- vi 文件名:打开文件
- 找到需要需改的地方之后,输入 i 开始修改
- 修改完成后,按esc推出修改。
- 输入 :wq! 保存修改
输入 :q! 不保存修改
3. debug
如果修改之后,没能成功运行,可以通过如下命令查看状态,是哪里出错了
systemctl status rc-local.service
4. 启用与禁止该开机项
启用该开机项:
systemctl enable rc-local.service
禁止该开机项:
systemctl disable rc-local.service
5. 树莓派关机
sudo shutdown -h now
参考: https://zhuanlan.zhihu.com/p/100617585