Jetson Nano 折腾笔记

最近get了个Jetson Nano,准备开始看看最近火的不行的AI啊什么的。 遂在这里记录一下过程,主要是把一些链接放在这里方便我自己以后找。

这篇文章假设读者有玩过树莓派,所以很多部分就提的比较简略,啊不过没有的话应该也能看得懂(其实是我自己能看得懂就行了哈哈哈哈哈)

开始的开始先放一个英伟达官方教程链接: Getting Started With Jetson Nano Developer Kit

安装系统

跟树莓派一模一样,先在这个页面下载系统镜像: Jetson Download Center,然后把系统写到tf卡里面就好了。 这里有各个操作系统写镜像的方法: Write Image to the microSD Card

要注意tf卡至少得用16G的,因为系统基于Ubuntu,而且带图形界面,写上去就已经用了12G了。我用了张32G的卡。

启动设备

Jetson Nano没有板载无线网卡什么的,所以要联网的话必须接网线、或者插usb无线网卡。然后还要插上鼠标键盘、和显示器。我只有一台Macbook在宿舍,最后东借西借终于把这些东西弄齐了。

先用网线连上路由器。
然后接上电,网上说这东西对电源对要求还蛮高的,说出什么问题可以先检查电源。电流要2A以上的,不过现在主流旗舰机配的快充头也完全足够了。 直接用数据线把它和充电器连起来就好了。

通电之后绿色的指示灯会亮。会显示类似树莓派的启动界面,但是Logo是英伟达的(废话。
弄得我感觉在启动显卡

之后就会显示Ubuntu的界面,让你设置账户名、电脑名和密码这些东西,这些也是一步一步照做就好。

安装程序

显示器什么的都是借的,还要借键盘鼠标啊什么的不怎么方便,然后尝试配置VNC远程桌面也没成功,可能是我太贪心了吧(

现在基本就是用笔记本开ssh连过去用,用惯了命令行界面操作Linux感觉也挺方便的呢。

更新软件包

首先第一步当然是更新软件包,用sudo apt update用sudo之后会让你输入密码,直接输入就行,密码不显示什么的我就懒得说了(

sudo apt update
sudo apt upgrade

默认的源是在国外的,就很慢,根据这个教程换了源:Jetson-Nano开箱配置及Tensorflow安装使用
换了源之后貌似包不是最新的,要不就是用不了,我又换回去了。

安装Tensorflow-GPU

因为买这个开发板就是想涉猎一下机器学习啊,当然要装Tensorflow和Pytorch这种东西啦,所以先装tf试试!

# 安装pip3
sudo apt-get install python3-pip python3-dev
# 安装tensorflow
pip3 install tensorflow-gpu

然后果然不行,弄了好久都没装上,各种网络问题……,要克服国家给的门槛呢。

最后当然是装好了,先按照tensorflow官方的教程Install TensorFlow with pip走,直到进入python虚拟环境(Virtualenv)。

下载英伟达提供的whl文件,在这里面挑最新的wget下来就好:tensorflow-gpu

# 下载
wget https://developer.download.nvidia.cn/compute/redist/jp/v42/tensorflow-gpu/tensorflow_gpu-1.14.0+nv19.10-cp36-cp36m-linux_aarch64.whl
# 安装
pip install tensorflow_gpu-1.14.0+nv19.10-cp36-cp36m-linux_aarch64.whl
# 删除
rm tensorflow_gpu-1.14.0+nv19.10-cp36-cp36m-linux_aarch64.whl

装的过程中由于网络问题可能也有几个依赖装不上,比如numpy什么的。也是通过把下不下来的链接用wget先下载,然后pip install来装。然后再继续pip install tensor.......就好了。

当然也可以配置代理或者换源,直接在网上搜怎么给pip配置代理就好了。

测试tensorflow

还是继续在虚拟环境里面,打开python解释器

$ python
Python 3.6.8 (default, Oct  7 2019, 12:59:55) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> # 这个时候就已经进入了python解释器

然后简单地试一试tf能不能用(一行一行执行)

import tensorflow as tf
sess = tf.Session()
a = tf.constant(1)
b = tf.constant(2)
print(sess.run(a+b))
# 输出: 3

用tensorflow算一下1+2等于多少,输出3的话就没问题啦!

有始有终

退出python解释器:

quit()

退出虚拟环境

deactivate

关机

sudo shutdown -h now

(拔掉电源)

那么这次体验Jetson nano也就到此为止啦,把它拿来压桌脚,以后有时间再捣鼓吧。