需求背景
在實際開發(fā)過程中,系統(tǒng)默認提供的功能和環(huán)境通常很難全面滿足項目需求。為了實現(xiàn)特定功能或滿足項目運行的個性化要求,開發(fā)人員往往需要對系統(tǒng)進行深入的定制化處理。這包括安裝必要的依賴庫、創(chuàng)建項目運行所需的配置文件、優(yōu)化啟動流程等。這些定制化操作不僅需要滿足項目的當前需求,還需要保證系統(tǒng)的穩(wěn)定性和運行效率。
當項目調(diào)試完成后,為了能夠?qū)⒁呀?jīng)優(yōu)化好的系統(tǒng)環(huán)境高效地推廣到多個設備上,避免手動重復配置的繁瑣和可能出現(xiàn)的人為錯誤,開發(fā)人員需要將整個系統(tǒng)的當前狀態(tài)制作成一個完整的鏡像文件。通過導出系統(tǒng)鏡像,可以將所有定制內(nèi)容完整地打包。這種方式不僅大幅減少了后續(xù)批量生產(chǎn)中的工作量,還可以確保每臺設備都擁有一致
的運行環(huán)境,降低潛在的部署風險,提升生產(chǎn)效率。
那如何將優(yōu)化好的系統(tǒng)打包出來呢?
1.EMMC系統(tǒng)備份
本篇內(nèi)容適合備份全部的Linux系統(tǒng)鏡像,包括Buildroot、Ubuntu和Debian,這里我們選用ubuntu22系統(tǒng)進行EMMC鏡像備份演示,首先將“iTOP-RK3568開發(fā)板【底板V1.7版本】\02_【iTOP-RK3568開發(fā)板】開發(fā)資料\10_Linux系統(tǒng)開發(fā)配套資料\09_Linux系統(tǒng)備份”路徑下的backup.zip拷貝到外置存儲設備例如U盤、TF卡、NVME固態(tài)硬盤上,這里選用最方便的U盤(建議格式化為NTFS格式,F(xiàn)AT32格式會有4G大小的限制),拷貝完成如下圖所示:
然后進入開發(fā)板的系統(tǒng)終端,如下圖所示:
然后插入外置存儲設備,在Ubuntu22文件系統(tǒng)中U盤會自動掛載,可以通過“df -h”命令查看掛載的路徑,如下圖所示:
注:如果沒有自動掛載,可以使用mount命令自行手動掛載
然后進入掛載目錄下,可以看到剛剛拷貝的backup.zip壓縮包,使用unzip命令進行解壓,解壓完成如下圖所示:
然后進入backu文件夾的script目錄下,這里的backup.sh就是備份腳本,如下圖所示:
接下來運行backup.sh進行備份,運行之后會選擇當前SOC類型,現(xiàn)在要備份的是rk3568 4.19版本的系統(tǒng),所以這里輸入2即可開始備份,備份過程如下所示:
等待備份完成,備份完成如下圖所示:
備份完成的鏡像會存放在上一級目錄的Image目錄下,如下圖所示:
可以看到分區(qū)文件、rkbin鏡像、uboot鏡像、內(nèi)核鏡像、文件系統(tǒng)鏡像都已進行了導出,至此,關于EMMC系統(tǒng)備份就講解完成了。
2.打包update.img
在上小節(jié)中已經(jīng)將EMMC中的全部分區(qū)鏡像進行了導出,而為了方便期間和統(tǒng)一燒寫,我們一般都需要將這些鏡像文件打包成一個整體的鏡update.img,在本小節(jié)中將對鏡像打包的過程進行講解。
首先將上一小節(jié)U盤Image目錄下的全部文件拷貝到對應Linux SDK的rockdev目錄下,拷貝完成如下圖所示:
然后使用“./build.sh updateimg”命令進行打包,打包過程如下所示:
打包完成之后會在rockdev目錄下生成整體鏡像update.img。
至此關于打包update.img鏡像的步驟就講解完成了,后續(xù)直接使用RK提供的燒寫工具進行整體燒寫即可。
-
開發(fā)板
+關注
關注
25文章
5050瀏覽量
97456 -
RK3568
+關注
關注
4文章
514瀏覽量
5048 -
迅為電子
+關注
關注
0文章
32瀏覽量
29
發(fā)布評論請先 登錄
相關推薦
評論