重要:如果不是特别急需要使用ubuntu20.04,请等待一段时间后Nvidia官方发布的SDK,这是最稳妥的方式。
想了解一下ROS2.0,但主机其他工程项目太多,担心配置ROS2.0环境会干扰旧的工程项目,故一直没有条件机会。恰好手头有一块闲置的XAVIER NX的开发版,正好可以拿来鼓捣鼓捣。
由于Nvidia官网上XAVIER的JetPack SDK的版本为4.6,其默认的ubuntu版本为18.04。但ROS2.0最新的Galactic版本需要ubuntu20.04。去年就有人在Nvidia的官方论坛询问Developer Kit啥时能升级为ubuntu20.04,毕竟LTS版本也有一段时间了。官方在论坛的回答是升级ubuntu20.04在计划中,需要等待5.x的内核版本,工程师一直在努力,要用ROS2.0的话请使用ubuntu18.04下的Foxy版本。但个人习惯还是更喜欢尝试体验ROS2.0最新的Galactic版本。所以还是选择升级到ubuntu20.04。
When will Jetpack move to Ubuntu 20.04? - Jetson Xavier NX - NVIDIA Developer Forums
Ubuntu 20.04 on AGX Xavier - DRIVE AGX General - NVIDIA Developer Forums
SDK Manager + Ubuntu 20.04 LTS - Jetson TX2 - NVIDIA Developer Forums
再次强调:比较稳妥的方法是等待一段时间NVIDIA会放出官方的ubuntu20.04的Developer Kit。如果确实要将ubutu18.04升级成ubuntu20.04,需要准备一张新的SD卡,下载官方的JetPack SDK镜像,然后烧录至SD卡,在插入XAVIER进行环境配置。特别注意,不要对已经开发工作了一段时间的系统进行升级,哪怕是有备份也不推荐。文章后续的升级工作都不是NVIDIA官方支持的,可能不同的开发环境会出现不同的情况,请谨慎考虑是否升级。
具体的配置方式详见官方教程:
Getting Started With Jetson Xavier NX Developer Kit | NVIDIA Developer
官方教程非常详细了,一步一步按步骤来就好,没啥好说的。
关于系统的语言我选择的是英文。
安装到下面这一步就可以了。
------------------------------------------------分割线-------------------------------------------------
接下来是将ubuntu18.04升级成ubuntu20.04。主要参考了以下两篇文档。
Upgrading NVIDIA Jetson Xavier NX to Ubuntu 20.04 | Viking Drone
https://carlosedp.medium.com/upgrading-your-nvidia-jetson-xavier-nx-to-latest-ubuntu-focal-fossa-20-04-5e92ccc5a66
一、准备升级
1、打开系统更新开关
sudo vim /etc/update-manager/release-updates
将其中的Prompt一项由Never修改为LTS。
2、更新
sudo apt-get update
sudo apt-get upgrade -y
sudo apt autoremove -y
二、升级工作
1、利用Ubuntu graphical updater进行升级:
sudo do-release-upgrade -d -f DistUpgradeViewGtk3
注意:在此推荐升级过程中挂个梯子,我在升级过程中由于国内snap一直无法与服务器连接,所以与其相关的部分全都是连接超时跳过了。还有就是这部分会卡很久,我当时还以为是死机失败了,最终耐心等待后就是log报错连接超时跳过,然后自动安装下一项。最后虽然ubuntu20.04升级成功了,但不知道后续是否会有影响。
2、卸载chromium浏览器
sudo apt-get remove --purge chromium-browser chromium-brower-l10n -y
升级后会有火狐浏览器,不用担心。也可以所有工作都完成后再在软件中心选择安装其他浏览器。升级过程中chromium确实引入了一大堆问题,个人觉得甚至可以考虑先卸载了再升级。
3、去除重复的菜单栏
sudo apt purge unity
这条指令我也不知道意义何在,只是照做了。
三、最终整理
1、右上角图标问题(可选择不处理)
不处理的话桌面右上角如图所示:
其实并不影响使用。
要美观点就修改以下路径下的image文件的文件名,随便将其重命名,如改为nv_logo1.svg。
/usr/share/nvpmodel_indicator/nv_logo.svg
效果如下:
2、开启NVIDIA repositories
Software & Updates application -> Other Software
勾选相关选项。具体哪几项我也不确定,我勾选了如下几项:
3、更新
sudo apt update
sudo apt upgrade -y
sudo apt autoremove
sudo apt --fix-broken install
四、完成升级。
重启系统。在settings->about中得到如下所示:
升级成功。
接下来安装ROS2.0的Galactic版本。