英伟达 Jetson nano 创造我们自定义的系统

下载辅助脚本

1
git clone https://github.com/pythops/jetson-nano-image

构建 rootfs

首先先指定 rootfs 的目录

1
export JETSON_ROOTFS_DIR=/path/to/rootfs

接着进行构建

1
2
3
4
5
6
7
8
$ cd jetson-nano-image
$ sudo -E ./create-rootfs.sh

Installing the dependencies... [OK]
Creating rootfs directory... [OK]
Run debootstrap first stage... [OK]
Run debootstrap second stage... [OK]
Success!

进行自定义

我们需要先安装 ansible 来进行自定义

1
python3 -m pip install --user ansible -i https://mirrors.aliyun.com/pypi/simple/

进入 ansible 目录

1
cd ansible

修改对应的文件

./roles/jetson/defaults/main.yaml

1
2
3
4
5
6
7
---
ubuntu_release: focal

new_user:
name: <您想使用的用户名>
shell: /bin/bash
password: <您的密码> # 密码必须使用字母,不然可能会在构建中失败

./roles/jetson/templates/etc/apt/sources.list

1
2
3
4
5
6
7
8
9
10
11
12
13
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }} main restricted
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-updates main restricted
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }} universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-updates universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }} multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-updates multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-backports main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-security main restricted
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-security universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports {{ ubuntu_release }}-security multiverse

# Needed for libffi6
deb http://mirrors.ustc.edu.cn/ubuntu-ports bionic main

接着开始构建自定义后的 rootfs

1
sudo -E $(which ansible-playbook) jetson.yaml

返回上级目录

1
cd ..

构建镜像

自定义开发板类型

  • 4GB 内存版 export JETSON_NANO_BOARD=jetson-nano
  • 2GB 内存版 export JETSON_NANO_BOARD=jetson-nano-2gb

存储目录

1
export JETSON_BUILD_DIR=/path/to/build_dir

开始构建

1
sudo -E ./create-image.sh

出现 successfully 后,在 $JETSON_BUILD_DIR/tools 目录下可以找到镜像文件

安装 nvidia 运行库

1
2
3
sudo apt update
sudo apt upgrade
sudo apt install cuda-toolkit-10-2 libcudnn8 libcudnn8-dev