转载自:
Nvidia Jetson Nano Nx快捷备份指南 – 知乎
Nvidia Jetson Nano Nx快捷备份指南
驱动工程师 jetson nano,xavier
有不少朋友使用Nvidia Jetson,由于一些失误导致自己辛苦编写的资料丢失。
而Nvidia官方又没有给出明确好用的备份系统的方式。
作为一个驱动工程师,公司项目用到的上百块Jetson板卡也需要快速的生产并更新固件。
兔子哥于是肝了好几个日日夜夜,终于摸索出一套简单一点的系统备份小技巧。
本文大纲:
1)如何备份系统
2)备份的系统如何恢复
1.如何备份系统
1)准备一个U盘,将系统备份临时存储到U盘里。
对于nano emmc和nx emmc的用户来说。准备一个剩余空间大于等于16G的U盘,U盘格式为NTFS或者EXT4格式的即可。
对于nano sd和nx sd的用户来说。需要准备一个剩余空间大于等于你作为系统盘的SD卡的容量的U盘。(比如你作为系统的SD卡为32G,则你的U盘需要剩余空间≥32G)
2)将备份脚本拷贝到U盘里。
脚本代码如下:
#!/usr/bin/env bash
basedir=`cd $(dirname $0);pwd -P`
echo $basedir
dd if=/dev/mmcblk0p1 of=$basedir/backup.raw
脚本表达的意思:将文件系统,通过dd命令,组建并存储到脚本所在的目录下,并命名为backup.raw
3)将此U盘插入Jetson中。
进入U盘下,先给脚本赋权限,然后执行脚本,等待。
一般正常情况 插入16G TF作为系统盘备份时间约为15~30分钟。32G的约为30~60分钟。
这样文件系统就备份好了。
nano emmc,nano nx最终生成的镜像是15G。
nano sd,nx sd最终生成的镜像是系统TF总容量的大小。(建议使用者使用16G或32G的TF卡作为系统存储空间,否则备份时间太久,导致备份出来的文件也非常大)。
2.备份的系统如何恢复
1)大家需要去Nvidia官网下载基础组建包(推荐此种方式)。
2)查找自己板卡使用的版本
点击进入官方目录查找
:
https://developer.nvidia.com/embedded/jetpack-archive
比如我使用的系统为Jetpack4.4,则我选择Jetpack4.4即可。
根据使用的板卡,选择下载的组件包。
将下载好的压缩包拷贝到ubuntu PC中。
Nano的包名称为Tegra210_Linux_XXX.tbz2
Nx的包名称为Tegra186_Linux_XXX.tbz2
3)通过git下载Nvidia_Flasher刷机工具
git clone https://github.com/x2816960/Nvidia_Flasher.git
4)下载完成后,需要编译。Nvidia_Flasher是通过QT5编写的。
如果没有安装qt5则输入指令:
sudo apt-get install qt5-default
5)编译Nvidia_Flasher
进入Nvidia_Flasher目录下,先执行命令
qmake
再执行命令:
make
等待Nvidia_Flasher编译完成。
6)将生成的Nvidia_flasher可执行文件,拷贝到Linux_for_Tegra目录下
7)在Linux_for_Tegra目录下,开启终端,输入指令
./Nvidia_flasher
来运行刷机程序。
在弹出的登录密码框中输入当前登录的用户ubuntu PC系统的密码,用来获取权限。
8)在软件的setup中,选择对应的板卡型号。目前一共有4种型号可选。
9)将带有备份镜像的U盘插入Ubuntu PC机中。
10)选择IMG Load,并在U盘里找到之前备份的镜像backup.raw。
11)通过USB线将Jetson板卡和Ubuntu PC机相连。
将REC管脚和地相连,然后再插入电源,进入刷机模式。
12)第一次恢复备份,则点击软件的首次组件并烧录按钮,进行烧录。
后续如果还需要烧录别的板卡,则直接点击全部烧录按钮,可以省去第一次组件的时间来直接进行烧录。
13)等待片刻,刷机成功会有如下提示,刷机失败也会弹窗提示。
至此,备份教程完毕。