文章目录

  • 1、外观
  • 2、Jetson Nano的规格
  • 3、Jetson Noao 激活
  • 4、 安装系统包和prerequisites
  • 4.1增加交换空间大小
  • 4.2 ssh远程连接nano并设置最大功率
  • 4.2.1 远程连接nano
  • 4.2.2 切换高低功率
  • 4.2.3 更新系统并移除无用软件
  • 4.3 安装系统所需的包
  • 4.3.1配置系统级的安装包
  • 4.3.2 配置python环境
  • 4.3.3 系统工具jtop和nvidia-smi的结合
  • 引用


本篇文章会介绍jetson nano系统的基础安装,安装后可以根据需求进行后续操作。


所写内容全部原创,经过实测,参考请添加引用说明。


先让大家看看长啥样,各位观众!!!

1、外观

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv


jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano基础配置_02


jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson环境配置_03


jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson环境配置_04


jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv_05


jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv_06


简简单单来个6视图。

2、Jetson Nano的规格

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv_07


建议从某东或某宝购买时带个Micro usb电源和64G的 SD卡,供电稳定,存储够用。

3、Jetson Noao 激活

一、在你启动NVIDIA Jetson Nano前,你需要做三件事:

  1. 一个 micro-SD card (最小16GB)
  2. 一个 5V 2.5A MicroUSB 电源
  3. 网线

二、下载 并flash .img 文件到你的micro-SD 卡里

  1. 1、 官方提供了三种方式format,分别用于windows,MAC,linux系统,我用的是windows。
  2. jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano基础配置_08

  3. 2、下载的文件是
  4. jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson环境配置_09

  5. 3、解压前有5G(解压后10多个G,所以推荐64G卡), 系统是Ubuntu18.04LTS,就用官方推荐的Etcher来烧进去。
    我是买了官方的SD卡的,所以这个卡是做好的,直接可用。但还是格式化后走了一遍(不怕累)
  6. 4、将SD卡放到nano卡槽中,连接好鼠标、键盘、网线和显示器就可以上电了。

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano配置_10


上电后,一路安装,会有ubuntu的一些设置,比如时区,键盘,用户名啥的,系统我选中国,会有中文输入法(下载很久,等不及了直接跳过,所以拼音不能用)。

5. 完成后的效果

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano基础配置_11

4、 安装系统包和prerequisites

包括四个方面的内容
4.1. 增加交换空间大小
4.2. ssh远程连jetson nano
4.3. 安装系统所需的包,配置python环境
4.4. 安装jetson inference engine

4.1增加交换空间大小

这一步是必须的,显存个内存是共享受的,物理内存只有4G,所以个人感觉加上好一些。Swap交换空间是在硬盘上,当物理内存RAM用完时,会开始使用。交换空间可以采用专用交换分区或交换文件的形式。在大多数情况下,不存在交换分区,因此唯一的选择是创建交换文件。创建教程参考1参考2该链接,将添加swap file到ubuntu 18.04系统上。

  • first,检查当前系统的效换空间
sudo swapon --show

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_12


检查内存

free -h

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_13


内存有4G,交换空间2G.

  • second,增加2G交换空间
    a. 创那用于swap的文件
sudo fallocate -l 2G /swapfile

如果fallocate没有安装,将得到fallocate failed:Operation not supported的报错信息。可以用以下命令创建:

sudo dd if=/dev/zero of=/swapfile bs=2048 count=1048576

b. 所有用户都可以读写swap file,设置正确的权限:

sudo chmod 666 /swapfile

c. 设置交换空间

sudo mkswap /swapfile

d. 激活交换空间

sudo swapon /swapfile
#为了使这个激活永久有效
sudo vi /etc/fstab
#粘贴 /swapfile swap swap defaults 0 0

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano配置_14


e. 验证增加空间是否有效

sudo swapon --show
sudo free -h

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv_15

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_16

4.2 ssh远程连接nano并设置最大功率

4.2.1 远程连接nano

有显示器,但还是要用ssh ,有两个好处

  1. 可以降低因为显示而吃的GPU资源
  2. 电流不够的风险可以降低

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_17


查看用户名使用命令:

whoami

查看ip地址用:

ifconfig

连接时还可以打开cmd,输入:

ssh username@ip

会要输入密码的

4.2.2 切换高低功率

有两种供电方式,10W和5W。

#查看当前是那个模式
sudo nvpmodel -q

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv_18

#将当前模式切换到5W模式,将会自动关掉两个cpu,只使用cpu1,2
sudo nvpmodel -m 1

两种模式,0 是高功率10w,1是低功率5w,默认状态是高功率。安装时,切换到最大功率,因为安装时会用到许多外设,耗电量大,在执行完功率状态切换后往往还要加一行:

sudo nvpmodel -m 0
sudo jetson_clocks

jetson_clocks将会使cpu频率固定。另外nano有两种供电方式,一种是5V 2.5A(10W)的microUSB供电;但如果你要有很多外设在(键盘、鼠标、wifi、显示器)在使用,最好用5V 4A(20W)的供电方式,来保证nano的正常工作。

4.2.3 更新系统并移除无用软件

移除LibreOffice会为系统省很多空间,这个软件对做深度学习和计算机视觉算法也没有太多用

sudo apt-get purge libreoffice*
sudo apt-get clean

接着,更新系统,首选,更换国内安装源:

  1. 备份原先source.list
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

2.修改source.list

sudo vim  /etc/apt/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
  1. 更新软件列表
sudo apt-get update

可能会有如下问题:

E: The repository ‘https://repo.download.nvidia.com/jetson/common r32 Release’ does not have a Release file

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_19


原因多半是因为设置代理或网络不好,建议更换网络,并执行如下代码:

sudo add-apt-repository universe

再进行更新。
或者选择不安全的处理方式(不推荐):

sudo mv /etc/apt/sources.list.d/nvidia-l4t-apt-source.list ~

这个源与nvidia官方更新有关,如果报错多半与网络有关,换成网速好可上外网的基本就可以解决
4. 如果有软件需要更新,执行以下代码:

sudo apt-get upgrade

但初次烧录的系统都比较新,没必要更新。

4.3 安装系统所需的包

本节将配置系统所需的包,先配置cuda的环境变量, 填加PATH到.bashrc,具体路径,看自己cuda版本,在路径/usr/local下。
具体写适合自己的:

vi ~/.bashrc
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export CUDA_ROOT=/usr/local/cuda
source ~/.bashrc

然后用命令查看cuda版本:

nvcc -V

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano配置_20

4.3.1配置系统级的安装包
sudo apt-get install build-essential make cmake cmake-curses-gui
sudo apt-get install git g++ pkg-config curl  zip zlib1g-dev libopenblas-base libopenmpi-dev 
sudo apt-get install libatlas-base-dev gfortran libcanberra-gtk-module libcanberra-gtk3-module
sudo apt-get install libhdf5-serial-dev hdf5-tools libhdf5-dev
sudo apt-get install nano locate screen

联网成功,网速顺利的话,将花费几分钟。
接着安装scipy的依赖和系统级别的cython:

sudo apt-get install libfreetype6-dev 
sudo apt-get install protobuf-compiler libprotobuf-dev openssl
sudo apt-get install libssl-dev libcurl4-openssl-dev
sudo apt-get install cython3

如果要装TensorFlow Object Detection (TFOD) API ,还要装xml的工具:

sudo apt-get install libxml2-dev libxslt1-dev

接着安装opencv的系统级依赖,一些编解码的库:

sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install libxvidcore-dev libavresample-dev
sudo apt-get install libtiff-dev libjpeg-dev libpng-dev
4.3.2 配置python环境

先安装pip,python的包管理工具:

sudo apt-get install -y python3-dev python3-testresources python3-setuptools 
wget https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py
rm get-pip.py

下文中将使用pip来安装python的一些包,对于一些网络不好的情况,建议先改变pip的安装源到国内:

#如清华的源
https://pypi.tuna.tsinghua.edu.cn/simple
#豆瓣源
https://pypi.doubanio.com/simple
#临时改源
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple some-package
#持久的设为默认源
pip -U install pip 
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
#如果您到 pip 默认源的网络连接较差,临时使用镜像站来升级 pip
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pip -U

我们将使用python的虚拟环境,来保证你使用的环境互相独立,使用体验与全局python环境 一样。

使用virtualenv和virtualenvwrapper安装命令:

sudo pip install virtualenv virtualenvwrapper

安装完之后,需要更新.bashrc

vim ~/.bashrc

在文件底部输入

# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs #指定所有的需拟环境的安装位置
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3 #指定解释器
source /usr/local/bin/virtualenvwrapper.sh#进行激活生效

保存并退出,使用source 重新载入

source ~/.bashrc

更多virtualenv使用的基本命令可以阅读本文 接着创建python的虚拟环境,

mkvirtualenv nano #创建一个名字叫nano的虚拟环境

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano配置_21


创建后直接进入了。

一些virtualenvwrapper的常用命令:

#创建一个环境
mkvirtualenv name #在~/.virtualenvs下安装name的需拟环境
#激活工作环境
workon name
#workon后不加任何东西可以列出所有虚拟环境
#退出当前虚拟环境
deactivate
#删除虚拟环境,需先退出
rmvirtualenv name
#列出所有虚拟环境
lsvirtualenv
#复制虚拟环境
cpvirtualenv sourece_name dest_name
4.3.3 系统工具jtop和nvidia-smi的结合

Jetson Nano中有个工具jtop, 可以同时查看CPU和GPU资源以及温度,另外就是可以把你当前的library展示出来.

#注意要退出虚拟环境,在系统中执行
sudo -H pip install jetson-stats
sudo jtop

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_virtualenv_22


选1、ALL的内容

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano配置_23


2、GPU的内容

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_24


3、CTRL的内容

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson环境配置_25


4、INFO的内容

通过本内容可以查看当前系统jetpack版本,安装有那些软件以及对应的版本。

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson环境配置_26


按q退出。

下图为低功耗下的图:

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano配置_27


本文图片为jetpack4.2.1内容,随着jetpack版本的升级,页面会发生改变,如下为jetpack4.4的部分内容,可以看到有6部分内容,这里不一一列举:

jetson nano安装gpu版本还是cpu版本 jetson nano可以安装windows吗_jetson nano系统安装_28

引用

文中所有链接部分都是引用参考内容及出处,一并致谢,些处不再过多罗列.如有侵权,请联系本人.

[1] https://www.pyimagesearch.com/2019/05/06/getting-started-with-the-nvidia-jetson-nano/
[2] https://medium.com/@jackycsie/jetson-nano-9d89cbf2fc18
[3] https://chtseng.wordpress.com/2019/05/01/nvida-jetson-nano-%E5%88%9D%E9%AB%94%E9%A9%97%EF%BC%9A%E5%AE%89%E8%A3%9D%E8%88%87%E6%B8%AC%E8%A9%A6/
[4] https://www.dlology.com/blog/how-to-run-keras-model-on-jetson-nano/
[5] https://thenewstack.io/tutorial-configure-nvidia-jetson-nano-as-an-ai-testbed/
[6] https://stackoverflow.com/questions/4757178/how-do-you-set-your-pythonpath-in-an-already-created-virtualenv/17963979
[7] https://www.pyimagesearch.com/2020/03/25/how-to-configure-your-nvidia-jetson-nano-for-computer-vision-and-deep-learning/
[8] https://jkjung-avt.github.io/jetpack-4.4/