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