树莓派linux设置开机启动程序
## 方法一:向rc.local文件添加启动代码 ##
修改rc.local文件,在终端输入并回车:
sudo nano /etc/rc.local
在打开的文本中找到exit 0,在此之前添加的代码在启动时都会被执行,在exit 0 之前添加一行代码:
su pi -c "exec /home/pi/testboot.sh"
ctrl+o保存,ctrl+x退出,然后在终端输入:sudo reboot ,重启系统测试。
su命令是指定在pi用户下执行这条命令,-c 表示执行完这条命令之后恢复原来的用户。
注意:系统启动时在执行这段代码时是使用root用户权限的,如果不指定pi用户,可能会因为权限问题导致脚本执行失败。
## 方法二:使用systemctl设置服务 ##
在/usr/lib/systemd/system/ 下新建文件testboot.service:
sudo nano /usr/lib/systemd/system/testboot.service
如果目录system不存在,请自行创建:
sudo mkdir /usr/lib/systemd/system
testboot.service文件内容如下:
[Unit]
Description=testboot
[Service]
Type=oneshot
ExecStart=/home/pi/testboot.sh
[Install]
WantedBy=multi-user.target
这里直接指定启动文件的路径,无法指定到pi用户执行,所以只能在root用户下执行。
设置服务自启动:
sudo systemctl enable testboot.service