本帖最后由 风精灵 于 2025-8-6 10:24 编辑

1.首先创建test2.sh脚本
root@elf2-desktop:~# cd /home/elf/
root@elf2-desktop:/home/elf# vi test2.sh
以 ELF 2开发板资料包\03-例程源码\03-0 Qt例程源码\00_HelloWorld 中的HelloWorld 为例进行测试,添加以下内容:
#!/bin/bash

sleep 3
export DISPLAY=:0.0
/home/elf/HelloWorld &
       sleep 3的原因为multi-user启动顺序较早 不添加sleep参数会导致应用启动失败,Ubuntu系统启动过程中 用户带界面的应用启动需要等待界面组件准备完成.这里测试elf2需要2秒左右正常进入系统 所以延时3s再启动应用

2.给脚本可执行权限
root@elf2-desktop:/home/elf# chmod 777 test2.sh

3.新建要启动的服务文件
创建并编辑test2.service文件
root@elf2-desktop:/home/elf# vi /etc/systemd/system/test2.service
在start.service里编辑以下内容
[Unit]
Description=/etc/rc.local Compatibility
After=multi-user.target

[Service]
Type=forking
ExecStart=sudo -u elf /home/elf/test2.sh

[Install]
WantedBy=multi-user.target


4.让系统获取到自定义的service文件并设置开机启动
root@elf2-desktop:/home/elf# systemctl daemon-reload
root@elf2-desktop:/home/elf# systemctl enable test2.service

5.执行sync后,reboot重启
root@elf2-desktop:/home/elf# sync
root@elf2-desktop:/home/elf# reboot

6.验证
Screenshot from 2025-07-17 15-24-30.png

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Powered by Discuz! X3.5  © 2001-2013 Comsenz Inc.