英伟达的TX、NX、AGX可以说是近几年边缘计算中非常牛的产品了。可Linux系统经常会出现安装某软件后系统环境崩掉的情况,接着系统崩掉的机会,记录一下Jetson AGX Xavier的刷机过程。
准备:
- 装有Linux(Ubuntu16.04或18.04)的主机或虚拟机(本文是虚拟机,16.04)
- 两台显示器,两套键鼠,需单独给AGX配一套键鼠
- 路由器或交换机,使AGX和虚拟机处于同一网段
- UAB转Type-C线
AGX刷机主要有两大步骤,第一步是虚拟机通过UAB转Type-C线将Linux系统镜像烧录到AGX中,此时AGX可以独立开机,但尚未安装各种包(i.e., CUDA,CuDNN,OpenCV,TensorRT等),第二步则是通过网口,将对应的包安装到AGX,从而完成刷机。注意:第二步有很大的随机性,主要看网络给不给力,网不好的得多试几次。
一、sdkmanager软件安装
SDK Manager下载:https://developer.nvidia.com/nvidia-sdk-manager
安装sdkmanager软件:sudo apt install ./sdkmanager_1.7.0-8846_amd64.deb
二、刷机
2.1板子连接顺序:
- 先将板子与电脑用USB转Type-C线连接(Type-C需要连接到指示灯一侧的接口)
- 板子通过HDMI与显示屏连接
- 板子连接电源
- 板子开机:先按中间的按钮(Force Recovery),再按左侧的电源键,进入recovery模式
- 在Linux系统输入lsusb,如下显示NVidia Corp为连接成功
2.2打开sdkmanager
2.2.1. 在terminal中输入sdkmanager,需要输入Nvidia的账号密码等等(开启软件速度略慢)
建议把Host Machine去掉,DeepStram按需要勾选
2.2.2. 下载AGX所需软件包,sdk_downloads用于存放下载的各种包
可能遇到的问题,需要更新一下Linux系统的各种包
开始下载AGX系统以及各种安装包
2.2.3. 当虚拟机的sdkmanager输出如下画面的时候,AGX已经烧录进去Linux系统了,这时候与AGX联系的显示器应该是有开机画面的,根据自己的需要配置AGX的用户名密码等,完成AGX的开机。进入AGX的系统后,在AGX终端输入ifconfig查看IP地址,并输入到sdkmanager对应的位置(下图红色矩形框)。
AGX开机画面
AGX的IP地址可以在connection information中查看
可能遇到的问题,网络连接不顺利
虚拟机的网络配置用“桥接模式”,判断AGX和虚拟机之间能否ping的通。
开始将下载的包安装到AGX
安装成功如下,重启一下AGX就完成刷机啦。