Jetson/L4T/从外部设备启动
内容
[隐藏]
介绍
此方法将告诉系统将 rootfs 挂载到外部设备(USB、SATA、NVMe)上。
您可以使用设备节点(例如 mmcblk1p1/sda1/nvme0n1p1...等)或基于 UUID 的方法。
脚步
1. 将外部设备连接到主机 Linux PC
2. 在设备上使用 gdisk 创建 GPT 和分区:
$sudo gdisk /dev/sd x "o" -> 清除所有当前分区数据 “n”-> 创建新分区 "1" -> 分区号 /dev/sd x 1 “40M”第一个扇区 -> 按 Enter 或“+32G”最后一个扇区 “Linux 文件系统”-> 使用默认类型 "c" -> 分区名称 "PARTLABEL" "w" -> 写入磁盘并退出。
3.获取分区UUID,复制rootfs到设备:
$ sudo mkfs.ext4 /dev/sd x 1 // 获取第 4 步的分区 UUID $ sudo blkid /dev/sd x 1 $ sudo 挂载 /dev/sd x 1 /mnt // 进入rootfs目录 $ cd Linux_for_Tegra/rootfs/ //这是sdkmanager准备的 // 复制 rootfs $ sudo tar -cpf - * | ( cd /mnt/ ; sudo tar -xpf - ) $ sudo umount /mnt
4. 将设备插入 Jetson 平台。让 Jetson 平台进入恢复模式并连接到主机 PC
5.1(版本> = r32.5)对于UUID方法,你需要创建文件的bootloader / l4t-根文件系统,uuid.txt_分机,把你的PARTUUID这个文件中。然后,使用命令:
$ sudo./flash.sh jetson-tx2 外部
对于设备节点方法,您只需将设备名称提供给 flash.sh 就更容易了。
例子: $ sudo ./flash.sh jetson-tx2 nvme0n1p1
5.2 (release < r32.5) 在主机 PC 上,为外部设备创建并复制 PARTUUID 到 bootloader/l4t-rootfs-uuid.txt,并用 rootfs 设备刷写板子。
$ sudo ./flash.sh jetson-tx2 外部
对于设备节点方法,它与之前的情况相同。
6. 完成
以 NVMe + Xavier NX 为例
如果您有 Xavier NX 并且外接设备是 NVMe PCIe M.2 SSD 卡,您可以在 XNX 上执行以下步骤:
1.1 将卡插入 XNX 上的 M.2 插槽并启动
1.2 下载包到XNX并生成rootfs
// 下载L4T 驱动程序包 (BSP)和示例根文件系统 https://developer.nvidia.com/embedded/linux-tegra // 将包放在同一个文件夹中并执行 $ sudo tar xpf Tegra186_Linux_R32.4.4_aarch64.tbz2 $ cd Linux_for_Tegra/rootfs/ $ sudo tar xpf ../../Tegra_Linux_Sample-Root-Filesystem_R32.4.4_aarch64.tbz2 $ cd ../ $须藤./apply_binaries.sh
2. 在设备上使用 gdisk 创建 GPT 和分区:
$sudo gdisk /dev/nvme0 "o" -> 清除所有当前分区数据 “n”-> 创建新分区 "1" -> 分区号 /dev/nvme0n1p1 “40M”第一个扇区 -> 按回车 “Linux 文件系统”-> 使用默认类型 "c" -> 分区名称 "PARTLABEL" "w" -> 写入磁盘并退出。
3 获取分区 UUID 并将 rootfs 复制到设备:
$ sudo mkfs.ext4 /dev/nvme0n1p1 // 在 r32.4.4 上,获取第 4 步的分区 UUID;不需要 r32.5 $ sudo blkid /dev/nvme0n1p1 $ sudo 挂载 /dev/nvme0n1p1 /mnt // 进入rootfs目录 $ cd rootfs/ // 复制 rootfs $ sudo tar -cpf - * | ( cd /mnt/ ; sudo tar -xpf - ) $ sudo umount /mnt
4. 让 Xavier NX 进入恢复模式并连接到主机 PC
5. 在主机 Linux PC 上,将 PARTUUID 复制到 bootloader/l4t-rootfs-uuid.txt。r32.5 不需要此步骤。
6. 用 rootfs 设备刷写板子:
// r32.4.4 $ sudo ./flash.sh jetson-xavier-nx-devkit-emmc 外部 // r32.5 $ sudo ./flash.sh jetson-xavier-nx-devkit-emmc nvme0n1p1
7. 完成
原文链接: