在嵌入式系統(tǒng)開發(fā)中,合理管理開機(jī)自啟動項目能夠優(yōu)化系統(tǒng)啟動流程,確保關(guān)鍵服務(wù)和應(yīng)用按時加載運(yùn)行。本文將詳細(xì)介紹在ELF 2 開發(fā)板Linux5.10.209系統(tǒng)下基于 System V init 服務(wù)管理機(jī)制的開機(jī)自啟動配置方法,為開發(fā)者提供全面的配置參考。
System V init 服務(wù)管理機(jī)制概述
Buildroot構(gòu)建的系統(tǒng),使用的是System V init服務(wù)管理機(jī)制,負(fù)責(zé)管理 Linux 系統(tǒng)的啟動流程、服務(wù)管理和系統(tǒng)狀態(tài)轉(zhuǎn)換,其中服務(wù)管理可通過設(shè)置/etc/init.d中的運(yùn)行腳本來實現(xiàn)。有些系統(tǒng)中引入了運(yùn)行級別,根據(jù)不同的運(yùn)行基本引用/etc/init.d中部分運(yùn)行腳本,不過ELF 2開發(fā)板的系統(tǒng)中只有一種運(yùn)行級別,會運(yùn)行/etc/init.d中所有腳本。
/etc/init.d中的腳本通常以S或者K開頭,S表示啟動(Start),K表示停止(Kill)。System V init是串行運(yùn)行機(jī)制,S或K后邊的數(shù)字表示的就是執(zhí)行順序。
例如下圖中S99開頭的文件最后執(zhí)行。

關(guān)閉默認(rèn)啟動的應(yīng)用
如果想關(guān)閉某個開機(jī)啟動的服務(wù),可以直接刪除該腳本,或者將S改為K,例如默認(rèn)不想啟動vsftpd,就可以將S70vsftpd改為K70vsftpd。
root@elf2-buildroot:/etc/init.d# mv S70vsftpd K70vsftpd

開機(jī)自啟Qt應(yīng)用
默認(rèn)啟動的是matrix-browser桌面,該桌面是通過/etc/init.c/S50matrix-browser文件啟動,文件包括了設(shè)置Qt相關(guān)環(huán)境變量,啟動桌面等操作。因此要啟動個人Qt應(yīng)用,可以直接修改S50matrix-browser文件,將啟動桌面操作關(guān)掉,改為啟動個人Qt應(yīng)用。
以下以開機(jī)自啟板子自帶的Qt demo為例,不再描述個人Qt應(yīng)用拷貝到板端的操作。
首先使用vi編輯器打開S50matrix-browser。
root@elf2-buildroot:~# vi/etc/init.d/S50matrix-browser
打開文件后將/usr/bin/matrix-browser -no-sandbox --disable-gpu 127.0.0.1 >> /dev/null &和killall matrix-browser注釋掉,改為啟動和關(guān)閉自己的應(yīng)用,以下以啟動關(guān)閉qtdemo_wifi應(yīng)用為例:

需要注意啟動應(yīng)用時要加絕對路徑(其中&符號表示后臺運(yùn)行程序,不會導(dǎo)致阻塞)。
開機(jī)自啟非界面應(yīng)用
以下以開機(jī)后實現(xiàn)WiFi自動撥號為例,在/etc/init.d/目錄下創(chuàng)建個S99開頭的腳本,把撥號的命令寫進(jìn)去,腳本附上執(zhí)行權(quán)限。
注意:撥號命令或者啟動其他應(yīng)用時都需要使用絕對路徑。

通過以上步驟,便可實現(xiàn)在 ELF 2 開發(fā)板的開機(jī)自啟動。各位小伙伴在實際操作中,需注意腳本命名規(guī)范、執(zhí)行權(quán)限設(shè)置以及命令絕對路徑的使用,確保自啟動配置的準(zhǔn)確性和穩(wěn)定性,如果在實踐中遇到問題,歡迎隨時交流探討!
-
單片機(jī)
+關(guān)注
關(guān)注
6077文章
45514瀏覽量
671410 -
嵌入式
+關(guān)注
關(guān)注
5200文章
20506瀏覽量
334915 -
Linux
+關(guān)注
關(guān)注
88文章
11778瀏覽量
219175 -
Linux系統(tǒng)
+關(guān)注
關(guān)注
4文章
614瀏覽量
29975 -
Linux開發(fā)
+關(guān)注
關(guān)注
0文章
46瀏覽量
7701
發(fā)布評論請先 登錄
Banana Pi開源社區(qū)基于瑞芯微RK3588開發(fā)板,DeepSeek開發(fā)利器
ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開發(fā)板上進(jìn)行UART引腳復(fù)用配置
ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開發(fā)板實現(xiàn)I2C功能復(fù)用
RK3588 EVB開發(fā)板原理圖講解【七】
RK3588 EVB開發(fā)板原理圖講解【八】 RK3588 power Tree
rk3588有哪些開發(fā)板?
瑞芯微RK3588開發(fā)板Linux系統(tǒng)添加自啟動命令的方法,深圳觸覺智能Arm嵌入式鴻蒙硬件方案商
基于迅為RK3568開發(fā)板全國產(chǎn)平臺,快速實現(xiàn)APP開機(jī)自啟動技術(shù)分享
技術(shù)分享|iTOP-RK3588開發(fā)板Ubuntu20系統(tǒng)旋轉(zhuǎn)屏幕方案
ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開發(fā)板用戶空間更換開機(jī)Logo
ElfBoard技術(shù)貼|如何在【RK3588】ELF 2開發(fā)板實現(xiàn)GPIO功能復(fù)用
ElfBoard技術(shù)貼|【RK3588】ELF 2開發(fā)板開機(jī)自啟動詳解
評論