2020-10-16

2020-10-17 21:00:36

Jetson TX1 加SSD固態硬碟並從硬碟啟動,開啟swap

剛接觸到jetson TX1開發板想用板子跑python的影象識別程式碼,TX1自帶的eMMC只有16G刷完韌體之後只剩下幾百兆。為了不被記憶體限制決定加固態硬碟

格式化新硬碟

插入新硬碟後工作列出現硬碟圖示
在這裡插入圖片描述
開啟搜尋方塊輸入「disk」開啟「磁碟」
在這裡插入圖片描述
進入磁碟點選設定圖示選擇格式化
在這裡插入圖片描述
Linux中要把磁碟格式化為「Ext4」

在這裡插入圖片描述
格式化完成後點開啟動器的磁碟圖示,磁碟自動掛載,之後進行系統移植

系統移植

上一步開啟磁碟圖示自動掛載後,按「ctrl+L」顯示掛在路徑
在這裡插入圖片描述
開啟終端輸入:

sudo cp -ax / '/media/nvidia/jetsonssd' 

(單引號裡是上一步複製的掛載路徑)
此命令將系統檔案複製到SSD硬碟,複製完後修改啟動路徑

cd /boot/extlinux  
sudo cp extlinux.conf extlinux.conf.original 
sudo gedit /boot/extlinux/extlinux.conf  

原檔案如下:

在這裡插入圖片描述
修改後檔案如下:

在這裡插入圖片描述
不同版本系統的內容不同,只修改紅框的內容即可,紅線處的路徑改為SSD硬碟的路徑(裝置路徑)

在這裡插入圖片描述
儲存後重新啟動,在終端中輸入「df -hl」可以看到磁碟已掛載到根目錄
在這裡插入圖片描述

開啟swap

jetson TX1有4G記憶體,當記憶體不夠時可開啟swap緩解記憶體壓力

開啟swap:

cd /home/nvidia
mkdir swap
cd ../
git clone https://github.com/jetsonhacks/postFlashTX1.git 
cd postFlashTX1
sudo ./createSwapfile.sh -d [directory location] -s[size in gigabytes] –a 

其中[directory location] 為放置swap檔案的地址,我寫的是: /home/nvidia/swap

[size in gigabytes] 為swapfile的大小,16代表16GB

-a為預設開啟啟動swap
之後可通過

sudo swapon -a
sudo swapoff -a

開啟或關閉swap

free -hf

檢視記憶體空間使用情況
在這裡插入圖片描述
到此成功將硬碟設定為啟動項並且建立了16G記憶體交換空間

參考
連結: https://zhuanlan.zhihu.com/p/31484956.