【xavier】JETSON_AGX_XAVIER 环境镜像制作和镜像迁移 手册+实录

介绍

本教程主要针对xavier环境的整体迁移工作而写。xavier环境不容易配置,所以配置好了之后可以制作镜像,下一次就可以直接把所有的环境都烧录进去。大大减轻工作量。
首先看一下你自己的需求。

  • 如果你是直接刷官方镜像,这里提供jetson4.4的版本,[请跳转第3部分 官方镜像制作]
  • 如果你是需要自己做一个镜像,[请看第1部分 镜像制作]
  • 如果你是需要把自己做的镜像刷进机器,[请跳转第2部分 镜像刷机]

1.镜像制作

步骤1 设备连接

首先要准备一台18.04的电脑作为host使用,然后是已经配置好环境的xavier。把xavier用专用的Type-C数据线连接到host上。连接的是靠近电源按钮的typeC口。然后把host和xavier都开机。

步骤2 制作raw文件

在host上运行一下代码:如果没有这个Linux_for_Tegra路径,那么需要下载NVIDIA SDK Manager,[[跳转到第2部分镜像刷机的#步骤1 安装NVIDIA SDK Manager]]

cd /home/$USER$/nvidia/install/JetPack_4.3_Linux_P2888/Linux_for_Tegra

sudo ./flash.sh -r -k APP -G backup.img jetson-xavier mmcblk0p1

step2会比较慢,大概会运行10分钟,所以需要耐心等待,保持数据线的稳定连接。

完成之后bash里面的显示:

[  17.9919 ] tegradevflash_v2 --read APP /home/lbw/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/backup.img
[  17.9924 ] Bootloader version 01.00.0000
[  18.4064 ] [................................................] 100%
[ 1071.5045 ] 

然后该路径下会产生一个backup.img的镜像,就是我们制作的镜像文件.

2. 镜像刷机

镜像文件本应该存放在以下路径:

如果没有使用SDKManager刷过机的话,新的电脑装上SDKManager是找不到以下路径的:`

~/nvidia/nvidia_/JetPack_4.5.1_Linux_P2888/Linux_for_Tegra/bootloader/

如果是使用过SDKManager刷过机,就不需要看步骤1了,可以直接调到步骤2.
如果没刷过,就看步骤1.

步骤1 安装NVIDIA SDK Manager

首先,下载安装jetpack4.4(离线包链接: 密码: mshd)

然后把下载好的包解压。

由于镜像刷机也需要SDKManager的刷机软件,所以需要先下载SDKManager。版本没有要求,这里使用的是4.4。刷入的系统镜像版本是4.5.1。所以SDK本身的版本和镜像里面的版本是无关的。

SDKManager4.5.1为例,打开SDKManager
界面如下:
图1:在这里插入图片描述

改变Install from 目录,选择jetpack4.4的解压后的包所在的sdk_downloads目录。
选择/OFFLINE from local folder-点击start,进入图2

图2:
在这里插入图片描述

勾选 I accept the terms and conditions of the license agreements
然后点击CONTINUE,会弹出窗口3

窗口3:
在这里插入图片描述

选择Create,然后再次点击CONTINUE。弹出窗口4

窗口4:
在这里插入图片描述

在窗口4中输入host密码。
等待Jetson OS image安装完毕,状态如图5:

图5:
在这里插入图片描述

此时选择Skip,跳出图6

图6:
在这里插入图片描述

然后选择Yes,看到图7

图7:
在这里插入图片描述

然后选择FINISH AND EXIT,退出SDK

找到以下文件夹(根据自己的图1中选择的目录),见图8
图8:
在这里插入图片描述

然后会发现并没有系统镜像。此时进入步骤2

步骤2 替换镜像文件

cd到下列目录(根据自己选择的目录):

cd ~/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/bootloader/

如果这个文件夹下本来就有system.img(官方自带镜像,后悔药)的话,先备份保存下。

mv system.img system.img.bk

然后把提前准备好的镜像文件xavier-image.raw 解压到该目录下。

sudo ./mksparse -v --fillpattern=0 ~/xavier-image.raw system.img

图9:
在这里插入图片描述

在图9中可以看到已经生成了系统镜像system.img,大小为28GB。

至此,镜像已经准备就绪,可以开始刷机了。进入步骤3.

步骤3 刷机

把需要刷机的xavier设备与host连接。然后让xavier进入recovery模式。进入方式:先按下中间的recovery键不松开,然后再按下电源键,过个一两秒后同时松开,就进入了该模式了。

切换到Linux_for_Tegra目录下,

cd ~/nvidia/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/

在host上输入以下命令:

sudo ./flash.sh -r jetson-xavier mmcblk0p1

等待完成提示为(这个我没有截图,从这个博客上拷贝的):

[  16.1093 ] 
[  16.1094 ] Reading partition
[  16.1104 ] tegradevflash_v2 --read APP /home/lbw/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/backup.img
[  16.1110 ] Bootloader version 01.00.0000
[  16.5251 ] [................................................] 100%
[ 991.8324 ] 
*** The [APP] has been read successfully. ***
	Converting RAW image to Sparse image... 

生成的backup.img文件就在下面的目录里面:

/home/lbw/nvidia_sdk/JetPack_4.4_Linux_JETSON_AGX_XAVIER/Linux_for_Tegra/backup.img

需要刷机的时候,直接改名为system.img,就可以了.

3. 官方jetson刷机

csdn上有很多教程,这里推荐这位的教程,比较简洁、具体、好用而且有jetpack4.4的百度网盘链接:链接

以上步骤仅适用于原xavier只有原来固态硬盘的情况。

如果原来的镜像系统有挂载SSD,并且/home放在了SSD里面,需要先刷机,然后对挂载硬盘进行分区,然后再把原来的/home文件拷贝到新机里面。

本文的参考资料:https://blog.csdn.net/qq_42741525/article/details/116232639

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值