Linux 36.3@Jetson Orin Nano之系统安装

1. 源由

NVIDIA开发者论坛里面大量答复中提及的系统安装,采用Jetson SDK Manager

本来是想体验一把的,但是在电脑上直接看到了以下两个问题:

  1. 屏幕分辨率需要大于1440x900
  2. 内存需要大约等于8GB

在这里插入图片描述
好吗,你说你就一个系统安装,在linux上,其实可能更有经验的朋友知道的就是一个dd,有必要搞得这么复杂吗?

  1. 吐槽下做这个工具的朋友,吐槽下NVIDIA对于边缘计算的不友好。
  2. 除此之外,就是Linux 36.2 JetPack6.0DP版本下,tf2.15.0+nv24.04异常问题:Inconsistency of NVIDIA 2.15.0+nv24.03 v.s. Colab v.s. Tensorflow Documentation
  3. V6.0版本是NVIDIA第一个产品版本,可能会更加稳定可靠点。

The NVIDIA® Jetson™ Linux 36.3 General Availability (GA) release includes the Linux Kernel 5.15, the Ubuntu 22.04-based root le system, the UEFI-based Bootloader, NVIDIA drivers, the necessary rmware, toolchain, and more. This release supports all Jetson Orin production modules and Developer Kits.
NVIDIA JetPack 6.0 is the first production release of JetPack 6. The previous JetPack 6 release was a developer preview only. This JetPack 6.0 production release includes Jetson Linux 36.3 which packs Linux Kernel 5.15 and Ubuntu 22.04 based root file system.

为此,特地整理下方便、简洁、高效、易懂的命令行烧录方法。

==>Is it possible for SDK Manager to support low resolution/low memory computer?

注:为了重新烧录,自己还搞了一个乌龙,How to flash NVMe with Jetson Linux 36.3

2. 命令行烧录

Step 1:下载Linux 36.3安装程序

如果不是上述版本,可以到官网https://developer.nvidia.com/embedded/jetson-linux-archive去下载需要的版本。

$ wget https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v3.0/release/jetson_linux_r36.3.0_aarch64.tbz2

Step 2:下载Linux 36.3根文件系统

$ wget https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v3.0/release/tegra_linux_sample-root-filesystem_r36.3.0_aarch64.tbz2

Step 3:解压Linux 36.3安装程序

$ tar xf jetson_linux_r36.3.0_aarch64.tbz2

Step 4:解压Linux 36.3根文件系统

$ sudo tar xpf tegra_linux_sample-root-filesystem_r36.3.0_aarch64.tbz2 -C Linux_for_Tegra/rootfs/

Step 5:安装应用程序

$ cd Linux_for_Tegra/
$ sudo ./apply_binaries.sh

Step 6:烧录前准备工作

$ cd Linux_for_Tegra/
$ sudo ./tools/l4t_flash_prerequisites.sh

Step 7:板子进入Recovery模式

  • 方式一:命令行进入
$ sudo reboot --force forced-recovery
  • 方式二:硬件J14操作

系统关机时:
A1:While connecting pins 9 and 10 of the Button Header ,
A2:Insert the DC power plug to turn on the system.

或者

系统开机时:
B1:While connecting pins 9 and 10 of the Button Header
B2:Temporaily connect pins 7 and 8 to reset system.
在这里插入图片描述

注:底板相关详细资料,详见:Jetson-Orin-Nano-DevKit-Carrier-Board-Specification_SP-11324-001_v1.2.pdf

Step 8:烧录系统

  • Jetson Orin Nano Developer Kit (NVMe)
$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal
  • Jetson Orin Nano Developer Kit (USB)
$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device sda1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal
  • Jetson Orin Nano Developer Kit (SD card)
$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device mmcblk0p1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

Step 9:重启初始化

安装过程完成后,Jetson开发工具包会自动重新启动。按照界面提示一步步安装即可。

3. 后续安装

【1】Linux 36.2@Jetson Orin Nano之基础环境构建
【2】ubuntu22.04@Jetson Orin Nano安装&配置VNC服务端
【3】ubuntu22.04@Jetson Orin Nano之OpenCV安装
【4】ubuntu22.04@Jetson Orin Nano之CSI IMX219安装
【5】Jammy@Jetson Orin Nano - Tensorflow GPU版本安装
【6】Jammy@Jetson Orin Nano - Camera接口
【7】Linux 36.2@Jetson Orin Nano之Hello AI World!

4. 参考资料

【1】NVDIA - Quick Start
【2】Install Jetson Software with SDK Manage
【3】Jetson Linux Archive

5. 补充

5.1 jtop安装

$ sudo apt update
$ sudo apt install python3-pip
$ sudo pip3 install -U jetson-stats
$ sudo systemctl restart jtop.service

在这里插入图片描述
注:整体安装下来,似乎还是有点问题:Linux 36.3 reflashed - Missing CUDA/cuDNN/TensorRT/VPI etc

5.2 nvidia-jetpack安装

$ sudo apt update
$ sudo apt install nvidia-jetpack

在这里插入图片描述

5.3 jupyter安装

$ sudo pip3 install jupyterlab
$ jupyter lab

5.4 Linux 35.5.0安装

开发者指南里面的关于烧录命令,版本可能有所差异。

因此,请找到对应版本的烧录命令。比如:r35.5.0版本与r36.3版本就不一样:

寻找路径:To set up an NVMe drive manually for booting --> Quick Start #To Flash the Jetson Developer Kit Operating Software

$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

在这里插入图片描述

5.5 Linux 35.5.6安装

$ tar xvf jetson_linux_r35.6.0_aarch64.tbz2
$ sudo tar xvpf tegra_linux_sample-root-filesystem_r35.6.0_aarch64.tbz2 -C Linux_for_Tegra/rootfs/
$ cd Linux_for_Tegra
$ sudo ./tools/l4t_flash_prerequisites.sh
$ sudo ./apply_binaries.sh
$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

注:sudo ./nvautoflash.sh安装失败 NVIDIA Jetson Linux 35.6.0 flash failed – boot/extlinux/extlinux.conf is not found

<think> 我们正在讨论的是如何在NVIDIA Jetson Orin NX设备上使用L4T 36.4.3版本的系统,通过命令行工具(jetson_clock和jetson_fan)来控制风扇。根据用户的问题,他特别提到了使用"jetson-clock-fan"命令,但实际上,在Jetson设备上,控制风扇和设置性能模式通常涉及两个不同的工具:`jetson_clock`(用于设置最大性能模式)和`jetson_fan`(用于控制风扇)。不过,在L4T 36.4.3版本中,控制风扇可能已经集成到了`jetson_clock`工具中,或者有独立的风扇控制工具。 在L4T系统中,通常有一个名为`jetson_clocks`的服务,它可以设置CPU/GPU的最大频率,同时可能包括风扇控制。另外,还有一个独立的`jetson_fan`服务用于风扇控制。但是,具体在L4T 36.4.3版本中,我们需要确认。 步骤: 1. 确认系统版本:用户已经明确是L4T 36.4.3,所以我们可以基于此版本进行说明。 2. 查看是否有jetson_fan服务:在较新的L4T版本中,风扇控制通常由`jetson_fan`服务负责。 3. 控制风扇的方法:可以通过修改配置文件来设置风扇的转速曲线,或者使用命令行工具直接设置风扇转速(需要root权限)。 根据NVIDIA官方文档,在L4T 36.4.3中,风扇控制通常由`jetson-fan`服务(即jetson_fan)提供。这个服务默认安装系统中,并且会在启动时自动运行。它根据温度自动调整风扇转速。 但是,用户可能希望手动控制风扇,例如设置固定的风扇转速。这可以通过以下步骤实现: 方法一:使用配置文件设置风扇曲线(推荐自动模式) - 配置文件路径:`/etc/jetson-fan.conf` - 在这个文件中,可以设置不同温度区间的风扇转速百分比。 方法二:直接控制风扇转速(手动模式) - 停止jetson_fan服务:`sudo systemctl stop jetson-fan.service` - 然后,可以通过写入`/sys/devices/pwm-fan/fan_speed`文件来手动设置风扇转速(0~255之间的值,0表示停止,255表示最大速度)。例如: echo 255 | sudo tee /sys/devices/pwm-fan/target_pwm 注意:直接写入`target_pwm`文件可能会因为系统版本而路径不同,在Orin上,路径可能是`/sys/devices/pwm-fan/target_pwm`。 另外,用户提到使用`jetson-clock-fan`命令,但实际上,标准的命令可能是`jetson_clock`(用于性能设置)和`jetson_fan`(用于风扇控制)。在L4T 36.4.3中,可能没有直接叫做`jetson-clock-fan`的命令。 所以,我们需要澄清: 1. `jetson_clock`:这个命令用于设置CPU/GPU等模块的最大频率,通常用于性能最大化。它不会直接控制风扇,但是当启用`jetson_clock`时,系统可能会提高风扇转速以适应更高的性能需求(通过jetson_fan服务自动调整)。 2. `jetson_fan`:这是一个服务,而不是一个直接运行的命令。我们可以通过配置其配置文件来调整风扇行为。 因此,如果用户想要手动控制风扇转速(固定转速),可以按照以下步骤操作: 步骤: 1. 停止jetson_fan服务,防止它自动调整风扇: sudo systemctl stop jetson-fan.service 2. 设置风扇转速(例如设置为最大转速255): echo 255 | sudo tee /sys/devices/pwm-fan/target_pwm 3. 如果想恢复自动控制,则重新启动jetson_fan服务: sudo systemctl start jetson-fan.service 注意:手动设置风扇转速在系统重启后会失效,因为服务会重新启动。如果想要永久改变风扇的行为,可以修改`/etc/jetson-fan.conf`配置文件,然后重启jetson-fan服务。 另外,在L4T 36.4.3中,可能还提供了其他工具,例如`tegrastats`可以监控温度,但并不能直接控制风扇。 总结:用户可以使用上述手动方式控制风扇,但一般建议使用自动模式。如果需要,可以修改配置文件来调整自动控制的转速曲线。 关于jetson_clock:这个命令通常用于最大化性能,它会设置所有模块到最大频率。运行方式:`sudo jetson_clock`。在运行后,由于系统负载和温度升高,jetson_fan服务会自动提高风扇转速。但是,jetson_clock本身并不直接控制风扇。 所以,回答用户的问题:在L4T 36.4.3 Orin NX上,没有直接的`jetson-clock-fan`命令,但可以通过控制jetson_fan服务和直接写入sysfs节点来控制风扇。 下面给出具体操作步骤: 1. 临时手动控制风扇转速(例如设置为150,范围0-255): sudo systemctl stop jetson-fan.service # 先停止自动风扇控制服务 echo 150 | sudo tee /sys/devices/pwm-fan/target_pwm # 设置转速 2. 恢复自动控制: sudo systemctl start jetson-fan.service 3. 修改自动风扇控制配置(例如,调整温度与转速的关系): 编辑配置文件:sudo nano /etc/jetson-fan.conf 修改内容(例如): [FAN] # temp: [start, full] # 当温度在start到full之间时,风扇转速线性增加 # pwm: [min, max] # 对应的pwm值范围 # # 默认配置可能是: # temp: [40 70] # pwm: [0 255] 我们可以调整温度范围,例如: temp: [35 60] pwm: [100 255] # 最低转速100,最高255 然后重启服务:sudo systemctl restart jetson-fan.service 4. 注意:在修改配置文件时,确保格式正确,否则服务可能无法启动。 5. 如果想要在开机时自动应用自定义的风扇曲线,修改配置文件后,服务已经设置为开机自启,所以无需额外操作。 另外,用户可能想知道如何查看当前风扇转速。可以通过以下命令: cat /sys/devices/pwm-fan/rpm_measured # 查看实际转速(转/分钟) cat /sys/devices/pwm-fan/target_pwm # 查看当前设置的pwm值 注意:路径可能因系统版本略有不同,可以使用`ls /sys/devices`查看相关设备。 综上所述,在L4T 36.4.3上控制风扇的方法主要是通过jetson_fan服务和sysfs接口。 由于用户的问题中提到了多个引用,但引用内容主要涉及烧录、克隆和YOLO配置,与风扇控制关系不大,所以我们不直接引用它们。但是,我们基于对Jetson系统的了解提供上述方法。 如果用户需要更详细的信息,可以参考NVIDIA官方文档中关于风扇控制的部分(通常在Jetson Linux的开发者指南中)。 </think> 在 L4T 36.4.3 版本的 Jetson Orin NX 上,控制风扇主要通过 `jetson_clocks` 和 `jetson_fan` 工具实现,以下是具体方法: ### 1. **jetson_fan 服务控制** 系统自带 `jetson_fan` 守护进程,通过配置文件调整转速: ```bash sudo nano /etc/jetson-fan.conf # 修改配置文件 ``` 配置文件示例: ```ini [FAN] temp: [40 70] # 温度区间(℃) pwm: [0 255] # 对应PWM转速值 ``` 修改后重启服务生效: ```bash sudo systemctl restart jetson-fan.service ``` ### 2. **手动实时控制** 停止自动风扇服务后直接写入 PWM 值: ```bash sudo systemctl stop jetson-fan.service # 关闭自动控制 echo 150 | sudo tee /sys/devices/pwm-fan/target_pwm # 设置转速值(0-255) ``` ### 3. **jetson_clocks 关联控制** 启用最大性能模式时会联动风扇加速: ```bash sudo jetson_clocks # 启用最大时钟频率(自动触发风扇加速) sudo jetson_clocks --restore # 恢复默认模式 ``` ### 4. **实时监控** 查看当前状态: ```bash cat /sys/devices/pwm-fan/target_pwm # 当前PWM值 cat /sys/devices/pwm-fan/rpm_actual # 实际转速(RPM) tegrastats # 综合监控(含温度/频率) ``` > **注意**: > - 路径 `/sys/devices/pwm-fan/` 是 Orin NX 的标准风扇控制接口[^1] > - `jetson_clocks` 会覆盖 DVFS 调节策略,持续高性能将导致风扇高转速[^3] > - 修改配置文件需 root 权限,建议先备份原文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值