Jetson Yocto 镜像来了:NVIDIA 官方支持,边缘 AI 量产更进一步
前言过去使用 Jetson大家最熟悉的是JetPack Ubuntu路线SDK Manager / JetPack ISO ↓ 刷入 Jetson Linux ↓ 安装 CUDA、TensorRT、DeepStream ↓ 开发 AI 应用这条路线非常适合快速验证 AI Demo、Camera、GStreamer、CUDA、TensorRT 等能力。但是一旦项目进入产品阶段问题就不一样了系统能不能裁剪镜像能不能重复构建应用和服务能不能直接固化进系统OTA、Secure Boot、CI 自动构建能不能系统化管理能不能像传统嵌入式 Linux 一样做产品镜像这就是Yocto的价值。从JetPack 7.2 / Jetson Linux R39.2开始NVIDIA 已经正式支持Yocto on Jetson用于构建可定制、可复现的 Jetson Linux 镜像。NVIDIA JetPack 7.2 下载页也明确展示了 Jetson Linux 39.2、CUDA 13.2.1、TensorRT 10.16.2 等组件信息。(NVIDIA Developer)这意味着Jetson 正在从 AI 开发板进一步走向边缘 AI 量产平台。1. 官方页面已经提供 Jetson Yocto 镜像入口在 NVIDIA JetPack 7.2 下载页面中除了传统的 JetPack ISO 和 SDK Manager现在已经可以看到 Yocto 镜像入口。(NVIDIA Developer)当前官方页面中可以看到三个 Yocto 镜像入口Yocto for Jetson AGX Thor Yocto for Jetson AGX Orin Yocto for Jetson Orin Nano这件事的重点不是多了几个下载按钮而是说明Yocto 已经进入 Jetson 官方软件交付体系。对于边缘 AI 产品团队来说这非常关键。2. Jetson Linux 39.2 中也加入了 Yocto Recipes在 Jetson Linux 39.2 相关页面中也可以看到 Yocto Recipes 相关入口。Jetson Linux 本身是 Jetson 平台的 BSP包含Linux Kernel UEFI Bootloader NVIDIA Drivers Flashing Tools Root FilesystemYocto 的作用是把这些 Jetson Linux / JetPack 组件放进 OpenEmbedded / Yocto 构建体系中最终生成一个适合产品交付的 Linux 镜像。可以简单理解为Jetson Linux / JetPack ↓ OE4T / meta-tegra ↓ Yocto 构建系统 ↓ 产品化 Linux 镜像NVIDIA 官方文档中也给出了 Yocto on Jetson 的典型开发流程准备 Linux 构建主机、获取 Yocto layer、选择 machine / distro / image、使用 BitBake 构建镜像、最后刷机并验证 boot、drivers、accelerators 和 product services。(NVIDIA Docs)3. OE4T 是 Jetson Yocto 的核心Jetson Yocto 背后的核心项目是OE4T也就是OpenEmbedded for Tegra。OE4T 主要包含两个关键部分项目作用meta-tegraJetson / Tegra BSP Layertegra-demo-distroJetson Yocto 参考发行版其中meta-tegra是最核心的 BSP layer。它把 NVIDIA Jetson Linux / JetPack 的 BSP、驱动、刷机工具、CUDA 相关组件接入到 Yocto / OpenEmbedded 构建体系中。当前meta-tegra项目已经标注支持 Jetson Linux R39.2.0、JetPack 7.2并列出了 Jetson AGX Thor、Jetson AGX Orin、Jetson Orin Nano 等开发板支持信息。(GitHub)4. Yocto 和 JetPack 是什么关系很多人容易误解用了 Yocto是不是就不用 JetPack 了不是。更准确的关系是JetPack / Jetson Linux ↓ 提供 NVIDIA 驱动、CUDA、TensorRT、Multimedia 等能力 ↓ Yocto / OE4T ↓ 把这些能力组织成可定制、可复现的产品镜像所以 Yocto 不是替代 JetPack而是让 JetPack 更适合产品化开发。路线适合阶段JetPack UbuntuDemo 验证、算法开发、快速调试Jetson Linux Yocto系统裁剪、量产镜像、长期维护一句话总结JetPack 适合开发验证Yocto 适合产品交付。这也是我在《Yocto 项目实战教程》中一直强调的核心思想Yocto 不是为了把 Linux 复杂化而是为了让产品系统更可控、更稳定、更适合量产。如果你是从硬件、MCU、单板调试转向嵌入式 Linux或者正在做 Yocto 产品化项目可以参考我的书《Yocto 项目实战教程》京东链接https://item.jd.com/15020438.html5. 官方预编译镜像支持哪些板子目前官方预编译 Yocto 镜像主要面向以下开发套件开发板MACHINEJetson AGX Thor DevKitjetson-agx-thor-devkitJetson AGX Orin DevKitp3737-0000-p3701-0005Jetson Orin Nano DevKitjetson-orin-nano-devkit-nvme这里一定要注意必须下载和硬件匹配的 MACHINE 镜像。 不要混用 Thor、Orin、Orin Nano 的镜像。在 Yocto 里MACHINE不只是一个名字它关系到设备树、启动配置、刷机布局和 rootfs 目标。6. Jetson Yocto 镜像怎么使用第一次体验 Jetson Yocto不需要自己 BitBake 编译。可以直接下载预编译的demo-image-full镜像进行刷机验证。基本流程如下下载对应开发板的 Yocto 镜像 ↓ 解压 tegraflash 刷机包 ↓ Jetson 进入 Force Recovery Mode ↓ 主机识别 NVIDIA APX 设备 ↓ 执行 initrd-flash ↓ 启动 Yocto 系统 ↓ 验证 JetPack Stack常见镜像文件名类似demo-image-full-jetson-agx-thor-devkit.rootfs.tegraflash-tar.zst demo-image-full-p3737-0000-p3701-0005.rootfs.tegraflash-tar.zst demo-image-full-jetson-orin-nano-devkit-nvme.rootfs.tegraflash-tar.zst刷机前先确认设备已经进入 Recovery Modelsusb-d0955:如果能看到 NVIDIA APX 设备说明 Recovery Mode 正常。然后进入解压目录执行sudo./initrd-flash刷机完成后设备会启动进入 Yocto 系统。7. demo-image-full 适合做什么demo-image-full是一个参考镜像不是最终产品镜像。它适合快速验证Yocto 系统能否启动 Jetson Linux BSP 是否正常 NVIDIA 驱动是否正常 Docker runtime 是否可用 Multimedia samples 是否可用真正做产品时建议基于meta-tegra和tegra-demo-distro创建自己的 product layer。产品化结构更像这样meta-tegra ↓ tegra-demo-distro / 自定义 distro ↓ meta-myproduct ↓ 应用 驱动 配置 服务 OTA ↓ 量产镜像这也是学习 Yocto 的真正意义。不是只会执行bitbake而是要理解Layer 怎么组织Recipe 怎么写Image 怎么裁剪Machine 怎么适配应用怎么进系统服务怎么随系统启动镜像怎么面向量产交付这些内容在《Yocto 项目实战教程》中也有系统介绍适合想从“能编译”进一步走向“能做产品镜像”的开发者阅读。书籍链接https://item.jd.com/15020438.html8. 哪些项目适合用 Jetson Yocto如果只是跑 Demo、验证模型JetPack Ubuntu 方式最快。但如果项目进入产品阶段Yocto 会更合适。项目类型是否适合 YoctoAI Demo 验证不一定CUDA / TensorRT 学习不一定工业相机适合机器人系统适合AI Box适合边缘网关适合需要 OTA / Secure Boot 的产品非常适合需要长期维护的量产设备非常适合Yocto 解决的不是“能不能跑”而是“能不能稳定交付”。对于边缘 AI 产品来说真正的难点往往不是跑通一个模型而是把系统长期稳定地运行起来并且能升级、能恢复、能维护、能量产。总结Jetson Yocto 镜像的出现是 Jetson 生态非常重要的一步。它说明 Jetson 正在从 AI Demo 和开发板平台进一步走向边缘 AI 产品平台。可以这样理解开发验证 JetPack Ubuntu 产品量产 Jetson Linux Yocto OE4T对于开发者来说可以先下载官方预编译的demo-image-full镜像体验。对于企业项目来说后续可以基于meta-tegra和tegra-demo-distro构建自己的产品镜像把应用、驱动、配置、安全策略和 OTA 方案统一进系统。这也是我写《Yocto 项目实战教程》的原因Yocto 的价值不只是“构建一个 Linux”而是帮助开发者建立真正面向产品交付的嵌入式 Linux 工程能力。Jetson 官方支持 Yocto也进一步证明了这一点边缘 AI 的竞争不只是模型能力的竞争也是系统工程能力的竞争。推荐阅读如果你正在学习 Yocto或者正在从硬件、MCU、单板 Bring-up 转向嵌入式 Linux 产品化开发可以参考《Yocto 项目实战教程》京东链接https://item.jd.com/15020438.html这本书围绕 Yocto 项目实战展开适合希望系统掌握 Yocto 构建、Layer、Recipe、Image、SDK、应用集成和产品镜像开发的工程师。参考资料NVIDIA JetPack SDK Downloads and NotesNVIDIA Jetson Linux Developer GuideYocto on Jetson PlatformsOE4T / meta-tegraJetson AI LabYocto on Jetson Quick Start《Yocto 项目实战教程》京东链接https://item.jd.com/15020438.html