目录
1、设置系统从固态硬盘启动
英伟达官方NX出厂是直接将SD卡(64/128G)烧录系统作为系统盘使用,国产NX出厂是将系统配置在8G内存中,在后续使用中需配置大量开发包,故将系统设置为从固态硬盘启动。
参考链接 https://blog.51cto.com/u_15352549/5393355
设置成功后,用df -h查看硬盘挂载情况:
2、换源
先备份源文件,再打开编辑
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo gedit /etc/apt/sources.list
删除所有内容,复制下列内容到到sources.list后保存
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main multiverse restricted universe
deb-src http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backports main multiverse restricted universe
更新源
sudo apt-get update
3、python3及pip3安装
系统预装的python为2.7,但目前项目多用到python3。
在终端输入:
sudo apt-get install python3-pip python3-dev
将pip升级为最新版,pip版本太低会导致后续包安装失败:
python3 -m pip install --upgrade pip
有时存在HTTP连接超时的问题,网络不好,更换网络即可。
- 为不同版本python创建软链接:
查看系统中的python版本和所在路径:
whereis python
查看已有的python版本和软连接:
cd /usr/bin
ll | grep python
删除已有的软连接,此处是删除建立的python3,
sudo rm -rf /usr/bin/python3
执行完上述命令,在运行python3,则会出现
bash:python3:未找到命令
执行下述命令再建立软链接
sudo ln -s /usr/bin/python3.6m /usr/bin/python3
此处,建立软链接名称python3,指定的python版本为python3.6(python路径和版本名称可以根据自己的设置情况修改)
4、安装Jetson-stats管理工具
利用该软件可以查看cpu 电源,gpu的使用 频率和调度等情况。
在pip配置好的情况下,直接在终端pip3安装:
sudo -H pip3 install jetson-stats
安装好后输入:
sudo jtop
有时候会遇到jtop.service未启动的问题,启动jtop.service或重启设备,都不起作用,这时可卸载jetson-stats,再安装低版本jetson-stats。
卸载指令:
sudo pip3 uninstall jetson-stats
pip3安装指定版本的指令:
# pip3 install 包名==版本号
sudo -H pip3 install jetson-stats==4.2.4
5、安装CUDA与cudnn
本博主jetpack为4.4.1,安装cuda10.2+cudnn8.0,根据自己需求,选择对应版本安装。
- 安装cuda
sudo apt-get install cuda-toolkit-10-2
- 安装cuDNN
首先查看仓库提供的cuDNN有哪些
sudo apt-cache policy libcudnn8
如果没有的话可以查看
sudo apt-cache policy libcudnn7
sudo apt-get install libcudnn8
若有要选择版本的话
sudo apt-get install libcudnn8=(*.*.*.**+cuda*** )
或直接通过以下方式安装:
sudo apt install nvidia-jetpack
JetPack包括以下工具: CUDA、TensorRT、cuDNN、OpenCV等。
6、安装pytorch
参见这篇博文 nvidia nx安装pytorch_nvidia nx pytorch-CSDN博客
参考链接 【Jetson Xavier NX 开发板深度学习环境配置流程】_jetson开发板-CSDN博客
7、其他包安装
对于简单的包,直接pip安装即可。有一些安装包在安装过程中比较慢,前端会出现假死的现象,可以用--verbose
运行安装命令跟踪安装过程,也可以检查安装的百分比。
举例:
pip3 install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple --verbose
8、系统复制
方法一:将算法环境安装在固态硬盘中,通过硬盘拷贝机直接拷贝即可。
方法二:制作镜像,参考博文 NVIDIA Jetson之TF卡系统镜像备份与恢复-CSDN博客
9、nvidia nx板刷机
前期准备:将nvidia nx载板引脚 FC REC与GND用跳线短接进入恢复模式,Micro-usb线连接ubuntu主机与nvidia nx板,nx板接入19V电源。
- 方法一:用sdkmanager刷机
步骤1:在笔记本电脑上安装VMware虚拟机;
步骤2:在虚拟机中安装ubuntu系统;
步骤三:从官方SDK Manager | NVIDIA Developer 下载对应版本的sdkmanager.deb文件,此处可下载历史版本,
在Ubuntu主机中安装sdkmanager,
sudo apt install ./sdkmanager_1.9.3-10904_amd64.deb
运行:
sdkmanager
卸载sdkmanager:
sudo apt remove sdkmanager
步骤四:将nx板设置为恢复模式,并与ubuntu主机连接,剩余操作参考以下链接
Jetson Xavier NX学习笔记——系统烧录+开机教程+环境搭建_如何使用 jetson xavier nx-CSDN博客
- 方法二:通过制作系统包刷机
一些低版本的jetpack无法通过sdkmanager方式刷机,可采用制作系统包刷机。
步骤一、二与上述一致。
步骤三:搭建系统烧录环境;
从Jetson Linux Archive | NVIDIA Developer 下载对应版本的驱动程序包与根文件系统包,
mkdir 32.4.4
cd 32.4.4
将下载好的驱动程序包(Tegra186_Linux_R32.4.4_aarch64.tbz2)和根文件
系统包(Tegra_Linux_Sample-Root-Filesystem_R32.4.4_aarch64.tbz2)拷贝到工作目录下,在32.4.4工作目录下解压驱动程序包,
tar -xf Tegra186_Linux_R32.4.4_aarch64.tbz2
解压完成过后,会得到系统烧写目录(Linux_for_Tegra),进入 Linus_for_Tegra 目录下的 rootfs 目录,在 rootfs 目录下解压根文件系统包:
cd Linux_for_Tegra/rootfs
sudo tar -xpf ../../Tegra_Linux_Sample-Root-Filesystem_R32.4.4_aarch64.tbz2
等待解压完成,返回到系统烧写目录,并在系统烧写Linux_for_Tegra目录下执行安装 NVIDIA 应用库:
sudo ./apply_binaries.sh
等待安装完成即可,至此系统烧录环境搭建完成。
步骤四:将nvidia nx设置为恢复模式,并与ubuntu主机连接,接下来烧写系统;
sudo ./flash.sh <board> mmcblk0p1
board为指定目标jetson设备的配置,这里为: