0.前言
很多小伙伴們在開發旭日X3派后,想備份自己魔改后的鏡像,官方手冊中提供了根文件系統制作的方法,但此種方法對于想備份自己開發魔改過后的鏡像非常不方便,在這里給大家提供一個較為簡便的方法,可以方便的備份與恢復SD卡鏡像。
1.準備
· 平臺準備
· 旭日X3派+SD卡
· PC端Ubuntu主機 或 Ubuntu虛擬機
· 軟件工具
· 鏡像備份階段
· gparted - 磁盤分區編輯工具
· fdisk - 一個創建和維護分區表的命令行工具
· dd - 一個從標準輸入或文件中讀取數據,根據指定的格式來轉換數據,再輸出到文件、設備或標準輸出的命令行工具,用于拷貝SD卡分區鏡像到文件
· 鏡像恢復階段
· balenaEtcher - 鏡像燒寫工具
· growpart - 分區擴容工具
· resize2fs - 文件系統調整工具
2. 備份鏡像
在SD卡中,有非常多的部分是未用到的空間,如64G的內存卡,實際內容僅占用了10G,那么在備份的過程中,我們就沒有必要把空閑的50多G也備份下來,我們只需要備份有內容的部分就可以了,那么我們就需要先壓縮SD卡空閑分區,然后再備份有內容的部分,步驟如下:
· 首先在PC端Ubuntu主機或者Ubuntu虛擬機中安裝Gparted工具
sudo apt-get install gparted
· 將旭日X3P的SD卡通過讀卡器連接到PC端Ubuntu,啟動Gparted
sudo gparted
· 選擇SD卡,操作分區,壓縮掉空閑的分區。
選擇SD卡Unmount SD卡拖動滑塊壓縮分區,白色部分為空閑分區,黃色部分為占用分區,注意拖動的時候要保留一部分白色部分,防止啟動時空間不足確認執行操作,此時即完成了壓縮分區的工作將SD卡分區從59.48G壓縮到了10.59G· 使用fdisk命令查看SD卡分區信息
sudo fdisk -u -l
可以看到其中的/dev/sdb就是我們的SD卡的磁盤編號,然后用如下命令查看SD卡分區信息
sudo fdisk -u -l /dev/sdb
· 使用dd命令備份SD卡到img文件
sudo dd bs=512 count=[fdisk命令中最大的end數+1] if=/dev/sdb of=backup_x3p.img
耐心等待命令執行完成~~~
執行完成后,可以看到在當前目錄下,出現了一個名為backup_x3p.img的文件,這就是我們備份的系統鏡像。此時,我們就完成了鏡像備份的工作。
3. 燒寫恢復鏡像
我們備份好鏡像后,就可以使用備份的鏡像來恢復SD卡,步驟如下:
· 與官方燒寫鏡像的步驟一致,使用balenaEtcher工具將前文備份的IMG鏡像文件燒寫到新SD卡中
· 將SD卡插到旭日X3P中,啟動并連接到X3P,不出意外的話,X3P可以正常啟動并進入系統:
· 使用df -h命令查看系統空間
此時可以看到,系統空間為壓縮后的大小,并不是SD卡實際的大小,這是因為我們在備份鏡像的時候進行了空閑分區的壓縮,那么接下來,我們就需要去恢復分區大小為當前實際SD卡大小
· 使用growpart工具擴展分區大小
sudo growpart /dev/mmcblk2 1
如出現找不到growpart命令,需要先安裝growpart工具
sudo apt-get install cloud-utils
· 使用resize2fs工具恢復文件系統
sudo resize2fs /dev/mmcblk2p1
· 重啟!此時再用df -h指令查看系統空間
可以看到系統空間已恢復成SD卡實際大小~
Enjoy~!
本文轉自地平線開發者社區
原作者:大圣GemiTech
原鏈接:https://developer.horizon.ai/forumDetail/98129467158916294
-
人工智能
+關注
關注
1791文章
46896瀏覽量
237672
發布評論請先 登錄
相關推薦
評論