前言: 

Jetson系列 刷机皆可参考此文章

此次刷机为 Jetpack4.6 版本, PC端使用 虚拟机16, ubuntu18

作者初次刷机踩了很多坑,二刷后有了很多经验,这里把刷机过程和容易出错的地方列举出来

Jetson系列刷机说难不难, 更多的是细节的注意, 即不会出错


目录

准备前注意事项:

一、刷机工具sdkmanager配置

SDK下载链接:

网络设置

安装启动SDK

二、刷机前换源

三、开始刷机

进入SDK第一步

 进入SDK第二步

进入SDK第三步

TX2配置重点

四、TX2信息查看

总结


准备前注意事项:

准备原装数据线

虚拟机15对sdkmanager不兼容, 可能无法连接TX2, 建议使用16或其它版本

虚拟机ubuntu建议使用16或者18, 虚拟机内存最好为80G


一、刷机工具sdkmanager配置

可在PC端下载sdkmanager工具后再复制进虚拟机中

SDK下载链接:

NVIDIA SDK Manager

网络设置

由于后续下载和安装都需要网络, 这里我们先给虚拟机配置上网络

设置后虚拟机就可以共享PC端的网络了

安装启动SDK

ubuntu16/18可直接复制文件进入内部, 下载后, 直接复制进虚拟机中即可

打开终端输入命令安装sdkmanager, 安装好后启动sdk

sudo apt-get install ./sdkmanager_1.8.0-10363_amd64.deb # 安装
sdkmanager # 启动sdk

 第一次使用sdk需要注册账号和登录, 注册方式也很简单, 按照提示注册即可

 到这里就已经配置好了sdkmanager了

二、刷机前换源

刷机前我们先对虚拟机进行换源, 换源后网络不是非常差的情况下都能下载成功

(很重要, 作者几次就是没有换源导致一直下载失败)

编辑 sources.list 文件

sudo gedit /etc/apt/sources.list # 编辑souces.list文件

注意: 虚拟机这里的源为 X86 架构, 一定要选择对应的源否则会出错

根据自己ubuntu系统选择对应的源链接:

 Ubuntu X86 清华源

下面的源对应 ubuntu18, 替换全部sources.list文件并保存

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse

替换后更新并保存新的源

注意: update 和 upgrade 命令执行较慢, 如果中途中断会在后续安装中引发问题

sudo apt-get update 
sudo apt-get upgrade

如果 update 报错如下, 说明换源出错

解决参考链接: ubuntu 软件源问题


三、开始刷机

这里使用的是在线刷机, 即下载安装包的同时安装, 离线刷机为先下载好安装包后再安装

如若在线刷机安装包下载完成后安装过程失败, 再次进入重刷也等同于离线刷机

进入SDK第一步

拔掉电源, 接上数据线, 并接入PC端

插上电源, 设置TX2为恢复模式

按住 Recovery 键不放, 再按一下 Power 键, 松开 Recovery 键, 现在就进入了恢复模式

此时虚拟机端会弹出连接设备

选择连接进虚拟机即可 (这里建议勾选记住选择, 后续还会再出现, 如若没有及时勾选会出现蓝屏)

连接成功画面应该如下, 也可通过终端命令 lsusb 查看, 成功会出现 NVIDIA Corp

若有弹出连接进虚拟机, 但却没有连接进sdk, 重新打开sdk, 如若不然则更换其它版本虚拟机

在第一步我们勾选如下, Host Machine可不用勾选, 其为虚拟机端也下载软件包, 多为远程开发使用, 这里我们不需要点击, 选择反而会加长后续下载的时间

在此我们也可以自行选择Jetpack的版本, Jetpack5需要更新SDK后才可安装

 进入SDK第二步

 勾选如下, 即在线刷机, 第二个也勾选则为先下载后安装, 即离线刷机

点击 CONTINUE 后会进行刷机前的检查

如果在前面update时强行中断, 这里则会出现进程占用错误:Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend)

解决参考链接: 进程占用错误 (关闭进程即可)

此时则说明未能更新update, 建议重新完成

进入SDK第三步

SDK第三步将要处理很多细节

可以看到正在安装了, 安装内容总体分为两部分, 操作系统软件包的安装

安装到一定内容后弹出如下

选择手动刷机, 之后Flash确认

安装到 20% 时会弹出对话框, 说明操作系统安装完毕(Ubuntu18), TX2将自动开机, 此时虚拟机该画面不要动, 到此已经成功大半了

TX2开机虚拟机将会再次提示外设的连接, 选择连接进虚拟机中即可

(到此即使后续不小心退出了, 同样可从第一步到此继续, 在第二步中不勾选操作系统的安装, 因为已经安装成功了, 同样的设置TX2为恢复模式, 连接进入虚拟机, 若TX2未开机则按一下reset键(最后一个键))

TX2配置重点

接上TX2外显和鼠标键盘进行初始化设置, 配置完成后等待TX2重启进入操作系统

TX2 初始化成功后, 连接网络与PC虚拟机端同一局域网 (作者这边TX2只能接收2.4G频段的网络)

之后我们对TX2进行换源, 不进行换源大概率后续安装失败

首先备份 sources 文件

sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup 

编辑 sources 文件

sudo gedit /etc/apt/sources.list

全部替换如下 (注意TX2为ARM架构与PC端X86架构不同, jetpack4版本为ubuntu18, 以下为对应的源)

ARM源Ubuntu ARM 镜像源

deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main universe restricted
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main universe restricted

进行更新保存 (这里很重要)

sudo apt-get update 
sudo apt-get upgrade

等待配置完成

配置完成后我们回到虚拟机

IP地址是SDK自动分配的, 这里无需更改, 保证虚拟机与TX2在同一局域网, 否则这里无法建立连接

之后会弹出一个检查安装环境的对话框

(如若前面步骤出错在此处会出现问题)

可能出错如下: (作者在此踩坑曾报了两个错误, 无出错则跳过此处

第一个错误: Internet connection (可能由于网速慢导致, 保证网速即可解决此错误, SDK高版本也可解决)

解决参考连接: Internet connection

第二个错误: Access to APT repository and ability to install Debian packages with it

解决: TX2 端 source.list 源文件配置错误, 重新配置即可

配置完后就是等待软件包的安装啦

  作者这里有一个软件包Multimedia(音频解析)几次安装不上, 目前还未能解决, 可先跳过不影响

最后附上一张全部安装成功的画面 

四、TX2信息查看

这里我们安装一个非常便捷的Jetson工具, 方便快捷的查看系统环境和状态信息

使用如下命令安装

sudo apt install python3-pip # 安装pip3
 
sudo -H pip3 install -U jetson-stats # 安装Jtop工具
 
jetson_release # Jetson状态查看

sudo jtop # 启动Jtop

总结

作者已经将对应位置可能出现的坑规避出来了, Jetson系列刷机总的来说只要细节的注意都能一次成功

我是一个喜欢记录的人, 这里将刷机心得和历程记录下来, 希望能给初接触Jetson系列的水友们提供帮助

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐