Jetson Xavier NX – 从 SSD 运行
与 Jetson Nano 相比,Jetson Xavier NX 开发人员套件有一个很好的补充。一个 M.2 Key M 插槽。借助 M.2 Key M 插槽,我们可以轻松添加固态硬盘( SSD )。M.2 Key M 插槽使用通过 PCIe 运行 的非易失性内存快速 ( NVMe ) 协议。
使用 Key M 的 SSD 有两种类型。当您在插槽中安装 SSD 卡时,该卡需要是 NVMe PCIe 类型。
SSD 通常比 SD 卡中的闪存快 5-20 倍,因此无论何时进行磁盘访问,速度都会大大提高。
此过程也适用于 Jetson AGX Xavier。请参阅下面的注释。
注意:在使用无线 (OTA) 更新进行升级之前,请阅读以下升级中的注意事项。
材料和工具
在视频中,我们安装了 Western Digital 500GB NVMe SSD。这些类型的设备有几种不同的尺寸和品牌,我们 在三星品种上也取得了不错的成绩。我们还使用我们值得信赖的 iFixit Pro 技术工具包 ,其中包含用于此目的的各种有用工具。
硬件安装
M.2 Key M 连接器位于载板的底部。固定螺钉位于 M.2 插槽的末端。卸下固定螺钉。出厂时,螺丝上可能有一些蓝色螺纹锁固剂,可能需要一点肘部润滑脂才能开始拆卸过程。
接下来将 SSD 卡安装到 Key M 连接器中,然后使用相同的固定螺钉将其固定到位。
磁盘配置
硬件安装后,是时候在 Ubuntu 下配置磁盘了。将 Xavier 连接到键盘、鼠标和显示器。在上面的视频中,我们主要使用 GUI 工具,请参考视频进行演示。
基本步骤是格式化磁盘,然后创建分区。在视频中,我们只是将大部分磁盘空间分配给一个大的 ol' 分区。但是,您可能想要更花哨一点。作为 Linux,有一些工具可以通过命令行执行此操作,正如所有专业人士都会告诉你的那样。
此时,您现在可以开始使用 SSD。它将作为未安装的驱动器显示在您的桌面上。
从 SSD 运行
我们在这里走得更远一点。Jetson 从 SD 卡启动镜像后,我们切换 rootfs 指向 SSD。实际上,系统现在将从 SSD 运行,SD 卡仅用于引导系统。
在 Github 上的JetsonHacks 帐户上,有一个存储库 rootOnNVMe。克隆存储库:
$ git clone https://github.com/jetsonhacks/rootOnNVMe
并切换到该存储库的目录:
$ cd rootOnNVMe
接下来,将eMMC/SD卡的rootfs复制到SSD
$ ./copy-rootfs-ssd.sh
最后,我们将添加一个服务,该服务将在系统启动时运行脚本。该脚本将“将根”“旋转”到 SSD,以便系统从 SSD 运行。
$ ./setup-service.sh
视频“技术谈话时间”中有一个章节介绍了脚本的工作原理。设置服务后,重新启动以使更改生效。
在这个简单的修改之后,您的系统的性能会感觉更快。
引导说明
这些脚本在从 eMMC/SD 卡加载内核映像后将 rootfs 更改为 SSD。对于 Xavier NX,您仍然需要安装 SD 卡才能启动。在撰写本文时,Jetson NX 的默认配置不允许从 NVMe 直接启动。
升级
安装此服务后,rootfs 将位于 SSD 上。如果您使用 OTA 更新(使用 NVIDIA .deb 存储库)升级到较新版本的 L4T,您还需要将这些更改应用到您从中引导的 SD 卡。
通常这涉及将 /boot* 目录和 /lib/modules/<kernel name>/ 从 SSD 复制到 SD 卡。如果它们不同,那么模块加载将被“污染”,即模块版本与内核版本不匹配。