天天看點

RK3588 開發闆上根檔案系統導出并制作img鏡像

RK3588 開發闆上根檔案系統導出并制作img鏡像

  • ​​預準備​​
  • ​​Linux 系統擷取 RK3588 開發闆檔案系統​​
  • ​​燒寫測試​​

具體流程分為三步走:

  • 将開發闆RK3588的整個根檔案系統的檔案,通過ssh拷貝到PC系統(Ubuntu);
  • 将此拷貝的全部檔案,加載到虛拟CD光牒中,制作成img檔案;
  • 将img檔案,再燒寫回RK3588開發闆,進行測試。

預準備

在開發闆 RK3588 上的檔案系統需要安裝:ssh、rsync;

本機 PC 電腦或虛拟機(Linux)上安裝:ssh、rsync。

Linux 系統擷取 RK3588 開發闆檔案系統

確定 RK3588 開發闆系統上已安裝 rsync

sudo apt-get install rsync      

在本機上建立一個目錄,用來存放 RK3588 開發闆的檔案系統

mkdir rootfs      

同步開發闆檔案系統,確定本機能 ping 通開發闆,執行:

#RK3588 IP 為 192.168.1.11
sudo rsync -avx [email protected]:/ rootfs      

執行結束後可将開發闆的檔案系統同步到主機上

制作鏡像,用dd工具建立鏡像檔案,在主機執行指令(可以制作出一個大小為 3000M 的空 img 檔案,大小可以修改 count 值)

dd if=/dev/zero of=rk3588.img  bs=1M count=3000      

/dev/zero:為虛拟盤的名字。

rk3588.img:為要建的鏡像檔案。

bs=1M :表示每塊讀寫1M資料。

count=3000:拷貝塊的數量。

格式化鏡像檔案,并加入 linuxroot 卷标

sudo mkfs.ext4 -F -L linuxroot rk3588.img      

挂載鏡像并往裡面拷入修改後的檔案系統

#建立鏡像檔案挂載目錄
mkdir ubuntu-mount
#挂載空的 img 檔案
sudo mount rk3588.img ubuntu-mount
#将檔案系統拷貝到 img 挂載的路徑目錄下
sudo cp -rfp rootfs/* ubuntu-mount      

解除安裝鏡像

sudo umount ubuntu-mount      

這樣 rk3588.img 裡就已經有剛才制作的根目錄内容了,但 rk3588.img 檔案大小卻是定義的分區大小,不是檔案系統的實際大小,是以還要經過一些處理才能釋出。

檢查并修複rk3588.img鏡像的檔案系統

sudo e2fsck -p -f rk3588.img      

精簡rk3588.img鏡像檔案的大小

sudo resize2fs -M rk3588.img      

燒寫測試

開發闆的檔案系統已經重新打包成了rk3588.img,用該檔案和相應的核心檔案就可生成系統鏡像,燒錄鏡像後就可直接運作使用者程式,進而省掉了重新安裝包和其他配置的工作。

生成鏡像檔案後,就可以重新燒錄到開發闆進行測試

繼續閱讀