系统安装
下载镜像
最新jetson nano镜像地址
镜像写入microSD卡
Nvidia官方推荐使用Etcher将下载的img文件写入TF卡。
![CleanShot-2020-06-29_22.58.11@2x](Jetson Nano安装配置.assets/CleanShot-2020-06-29_22.58.11@2x.png)
![CleanShot-2020-06-29_22.52.57@2x](Jetson Nano安装配置.assets/CleanShot-2020-06-29_22.52.57@2x.png)
开机自启
sd镜像做好后,插上电没有反应,咨询客服后原来是要把跳线插好,如图。
![IMG_4133](Jetson Nano安装配置.assets/IMG_4133.jpg)
系统配置
增加交换空间大小
这一步是必须的,显存个内存是共享受的,物理内存只有4G,所以个人感觉加上好一些。Swap交换空间是在硬盘上,当物理内存RAM用完时,会开始使用。交换空间可以采用专用交换分区或交换文件的形式。在大多数情况下,不存在交换分区,因此唯一的选择是创建交换文件。
增加交换空间8G
sudo fallocate -l 8G /swapfile
如果fallocate没有安装,将得到fallocate failed:Operation not supported的报错信息。可以用以下命令创建:
sudo dd if=/dev/zero of=/swapfile bs=8192 count=1048576
所有用户都可以读写swap file,设置正确的权限:
sudo chmod 666 /swapfile
设置交换空间
sudo mkswap /swapfile
激活交换空间
sudo swapon /swapfile
#为了使这个激活永久有效
sudo vi /etc/fstab
#粘贴 /swapfile swap swap defaults 0 0
![CleanShot-2020-06-30_11.40.59@2x](Jetson Nano安装配置.assets/CleanShot-2020-06-30_11.40.59@2x.png)
验证增加空间是否有效
sudo swapon --show
sudo free -h
![CleanShot-2020-06-30_11.41.53@2x](Jetson Nano安装配置.assets/CleanShot-2020-06-30_11.41.53@2x.png)
修改源
划重点,替换源地址前记得先以默认源把apt-transport-https包装上解决现有鸡还是先有蛋的问题(别改完https源以后发现无法下载)。由于国内宽带运营商普遍使用缓存劫持技术来提高网络性能,这个技术是把双刃剑,有可能导致你通过HTTP站点更新软件时下载到缓存服务器上较旧的文件从而引起软件依赖关系发生严重错误,强烈建议使用HTTPS以避免缓存劫持。
sudo apt-get update
sudo apt-get install apt-transport-https
跳转到源文件所在的目录
cd /etc/apt/
备份
sudo cp sources.list sources.list.bak
修改sources.list,直接用以下内容替换 sources.list文件中的所有内容即可
deb https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
更新
sudo apt-get update
升级
sudo apt-get upgrade -y
配置远程桌面
安装vino
sudo apt install vino
设置VINO登录选项,依次执行
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
网卡加入VINO服务
nmcli connection show
显示如下,我们使用的是有线网络,因此拷贝第一行Wired connection 1的UUID
![189635340_19_20200503122210491](Jetson Nano安装配置.assets/189635340_19_20200503122210491.jpg)
将UUID拷贝粘贴到如下命令的单引号[‘your UUID’]之间,并执行
dconf write /org/gnome/settings-daemon/plugins/sharing/vino-server/enabled-connections "['your UUID']"
export DISPLAY=:0
测试登录
在Nano上启动vino-server,Nano上执行(注意通过桌面,而不是ssh终端)
/usr/lib/vino/vino-server
本指令执行后,终端不关闭,在windows等其他系统打开VNC viewer登录,能够登录即配置成功。
添加开机启动vino-server
我们希望每次Nano上电开机后,自动启动vino-server,只需要将上述命令加入开启启动选项,这样就彻底接键盘显示器的麻烦了。下面快来设置吧!
在Nano的Ubuntu系统左上角dash中搜索application会出现“开机启动应用”设置,或者通过命令打开“开机启动应用”设置:
sudo gnome-session-properties
打开Startup Applications应用,添加如下开机启动内容
-
名称:StartVinoServer
-
指令:/usr/lib/vino/vino-server
![189635340_23_20200503122211866](Jetson Nano安装配置.assets/189635340_23_20200503122211866.jpg)
这里有个坑,关掉StartVinoServer后再打开,发现刚刚添加启动项不见了,分析系统日志发现,原来是启动项文件夹权限不对,执行以下命令解决:
sudo chown -R user:group /home/user/.config/autostart/ #user、group替换成实际用户和用户组
这时重启后,用客户端连接vnc,发现没有连上,google之,发现原来必须在用户登录后,vnc-server才能启动,故在ubuntu桌上搜索 User Accounts机能,把这个账户设置成 Automatic Login。
重启,发现vnc能连了。
加密连接
如你对安全有要求,需要设置vnc登录密码,可以参考以下配置
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino authentication-methods "['vnc']"
gsettings set org.gnome.Vino require-encryption false
gsettings set org.gnome.Vino vnc-password $(echo -n 'password'|base64)
gsettings set org.gnome.settings-daemon.plugins.sharing active true
eths=$(nmcli -t -f uuid,type c s --active | grep 802 | awk -F ":" '{ print "'\''" $1 "'\''" }' | paste -s -d, -)
gsettings set org.gnome.settings-daemon.plugins.sharing.service:/org/gnome/settings-daemon/plugins/sharing/vino-server/ enabled-connections "[ $eths ]"
重点是这行
gsettings set org.gnome.Vino vnc-password $(echo -n 'password'|base64)
参考
Jetson Nano–1–Jetson Nano刷机教程-开机配置及Tensorflow安装详细步
【Jetson-Nano】jetson_nano安装环境配置及tensorflow和pytorch安装教程