工作需求,需要快速佈署AI程式到多台Jetson Xavier NX Developer Kit中,使用的是SD card。
NV官方寫了很多好用的scripts,像是flahs.sh和nvmassflash.sh…等等,但可惜不支援SD卡,只支援emmc平台,使用emmc的朋友可以參考README_Massflash.txt,基本上只要找台ubuntu電腦下載SDK Manager,就可以在nvidia/Linux_for_Tegra中找到該README。
跟我一樣使用SD卡的,有3種方式:
- 使用dd指令clone SD卡,再用Etcher flash到新SD卡
- 啟動一個虛擬NX,安裝好環境、放好檔案後,再用Etcher flash到新SD卡
- 課金開大絕,使用SD卡對拷機XD
第1種方式,可以參考本篇步驟,第2種之後有空再紀錄XD。
- 尋找SD卡ID
- clone SD卡
- multi-flash/mass flash至新的SD卡
需求:
- 1張需要備份的SD卡,還有數張要燒錄的新SD卡
- 至官網下載燒錄用軟體Etcher:https://www.balena.io/etcher/
尋找SD卡ID
先將要備份的SD卡插入讀卡機,然後連接電腦。
下指令fdisk -l,找到你要備份的SD卡,像下面這樣,我要備份一張64G的SD卡,叫/dev/sde。
clone SD卡
這邊我們要將SD卡備份成SD image,整張SD一起clone是較方便的做法:
dd bs=4M if=[SD卡ID] of=[output image的名稱]
bs是block size,可加可不加。status=progress是可以看到現在進度,也是可加可不加。
它大概費時10分鐘,size為60G左右,基本上你的SD卡容量多大,它就多大,不過可以用一些工具壓縮或剪裁.img,來縮小size。
multi-flash/mass flash至新的SD卡
將新的SD卡們插入讀卡機,接上電腦,
- 打開安裝好的Etcher
- 選擇剛剛備份好的SD image
- 還有所有要燒錄的新SD卡
- 再按flash
會看到它正在flash,之後再validating
速度可以來到251.8 MB/s,挺快的,2張SD卡差不多8分鐘就完成了!
實測一下新SD卡有沒有成功燒錄,看起來功能都很正常,相機跟object detection都有正常運作。