最近在鼓捣NVIDIA AGX Jetson Orin,刷机过程中踩了一些坑,记录一下刷机的流程供有需求的友友们避坑,废话不多说,直接进入正题喽!
文章目录
Orin刷机刷的是什么:NVIDIA官方的JetPack5.0.2,简单的说,就是让Orin安装上Ubuntu20.04系统+各类自带的组件(如CUDA、TensorRT、OpenCV等)
首先,刷机需要准备如下硬件和软件:
sudo apt install ./sdkmanager_1.9.1-10844_amd64.deb
sudo apt-get update
刷机过程大体可以分为2大步,一是连接好设备并让Orin进入Recovery模式,二是在个人ubuntu电脑上和Orin上根据安装好的SDK Manager程序完成相应操作。
首先将Orin电源线、DP显示屏线、TypeC转USB线都准备好,并且TypeC转USB线连接至电脑USB接口,如使用虚拟机进行操作,弹窗会有提示说将该USB设备接在宿主机还是接在虚拟机下,选择接入虚拟机下。
下面介绍重要的一步:如何让Orin进入Recovery模式
Orin进入Recovery模式分两种状况,一是当Orin处于未开机状态,二是当Orin处于开机状态; 当处于未开机状态时,需要先长按住②键(Force Recovery键),然后给Orin接上电源线通电,此时白色指示灯亮起,但进入Recovery模式后是黑屏的,所以此时连接Orin的显示屏不会有什么反应。
当处于已开机状态时,需要先长按住②键,然后按下③键(Reset键),先松开③键,再松开②键。
可以通过个人ubuntu电脑确认Orin是否已经进入Recovery模式,在终端中输入:
lsusb
若出现下图中红色框框对应的代号,即代表已进入Recovery模式。
熟悉上述操作后,下面开始打开已经安装好的SDK Manager程序。
在终端中执行如下命令打开SDK Manager:
sdkmanager
Step 1
此时个人ubuntu电脑出现如下界面,会加载进度条并且进行NVIDIA账户登录验证,登录后,若Orin尚未进入Recvoery模式,则下图红框处为未检测到设备
选择Jetson AGX Orin设备即可,此时原来红框处为已检测到Orin了。
在Continue到下一步之前,建议先把Host Machine取消勾选,因为我们通常是想把配置刷到目标设备Orin上,并不需要在个人ubuntu电脑上安装,可以节省很多空间。
Step 2
在取消勾选Host Machine进入step2后,仅出现Target Components,这边按默认勾选即可。 注意:确保个人ubuntu电脑有足够的磁盘空间进行下载和安装。下方红框中提示为需要下载的内容大小以及下载到何处,路径可自定义指定;若无下载路径的文件夹,在点击continue后会提示你是否创建,创建完继续点击continue即可。
等到下载完并且安装一定时间后,会弹出如下界面告知即将开始刷系统到Orin上
注意:这里需要选择手动安装模式,并且选择Pre-Config(相当于在这里提前为系统创建了用户和设置了用户密码,待会系统安装完成后可以直接使用这个用户登录,就不用经历创建用户的引导过程了),选择完后,最最最最要紧的一步就是要确保检测到进入了Recovery模式的Orin,此时建议再次通过②键+Reset键进入Recovery模式!如果正常的话,个人电脑界面会弹出几条USB连接的消息,表示Orin重新被识别了。如果没有执行这一步,有可能在点击Flash后就报错了。
接下来点击Flash后,就开始等待刷系统到Orin上了,这里一定要将Orin和显示屏连接好,待会Orin就会自动开机启动,屏幕也正常显示开机界面,使用之前Pre-Config创建的用户登录即可。
至此,Orin的ubuntu20.04系统就算是成功刷上了,接下来还要刷组件(CUDA、TensorRT等),现在相当于有两台可以操作的电脑了,先把个人ubuntu电脑放一边,使用你的外设鼠标键盘对Orin进行换源操作。
Step 3
在Orin浏览器中打开下方链接,将Orin自带源换成arm架构下ubuntu20.04的清华源(因为Orin为arm架构)。ubuntu-ports | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
按指示,在终端中执行指令找到/etc/apt/sources.list,并将其中原有内容全部删除,然后将清华源复制到其中,保存后退出,执行如下命令更新软件源:
sudo apt-get update
sudo apt-get upgrade
这里执行需要一段时间,执行完毕后,换源完成。
Step 4
注意:这里需要将Orin和个人ubuntu电脑连在同一局域网下(连同一个wifi就好了),然后在Orin上通过终端执行ifconfig命令查看当前IP地址,然后复制到个人ubuntu电脑上IPV4处。建议在install之前,在个人ubuntu电脑上看看能不能ping通Orin(笔者试着从Orin端ping虚拟机,ping不通,但对后续安装没影响,只要个人ubuntu电脑端能够ping通Orin即可),ping通为如下界面:
能够ping通后,执行install,接下来就等待它慢慢把组件也刷到Orin上去即可,有可能会出现BSP和Multimedia安装失败的情况,但是无伤大雅,只要CUDA、TensorRT等核心组件刷成功了就行(手动狗头~)
刷完之后可以在Orin终端利用nvcc -V等指令查看CUDA时候成功安装,其它组件的查询方法自行百度即可。
至此,刷机过程已全部完成,希望本文能给各位有刷机需求的友友们起到一点参考作用。
( •̀ ω •́ )y