AI 摘要

在这篇文章中,我们将揭示如何利用 Jetson Nano 实现 USB 启动及系统配置。从修改启动镜像、解决图形界面问题,到提升远程桌面性能与磁盘自动挂载,每一个细节都能显著优化你的使用体验。跟随我们一起探索这些实用配置,助力你的 Jetson Nano 更加高效地运行。准备好了吗?让我们开始这段激动人心的旅程!

Jetson Nano USB 启动

官方的 Bootloader 已经支持 USB 启动了,但是由于默认的镜像是为 SD 卡准备的需要对镜像文件进行修改。

首先将 Jetson Nano 的 SD 镜像写入U 盘或其它 SSD 中,因为镜像文件系统是 ext4 格式,需要使用另一台 Linux 系统设备(或虚拟机)来挂载镜像。

将镜像文件在 Linux 系统的文件管理器中打开,编辑 /mnt/boot/extlinux/extlinux.conf 文件,可以看到镜像默认将启动路径指向了 /dev/mmcblk0p1,也就是 SD 卡的第一个主分区。

LABEL primary
      MENU LABEL primary kernel
      LINUX /boot/Image
      INITRD /boot/initrd
      APPEND ${cbootargs} quiet root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0

mmcblk0p 属于多媒体卡(例如SD卡或eMMC)的设备分区,而 SATA、SCSI 或 USB 接口的磁盘设备的分区为 sda ,故只需要将 /dev/mmcblk0p1 修改为 /dev/sda1 即 USB 接口设备的第一个主分区。

LABEL primary
      MENU LABEL primary kernel
      LINUX /boot/Image
      INITRD /boot/initrd
      APPEND ${cbootargs} quiet root=/dev/sda1 rw rootwait rootfstype=ext4 console=ttyS0,115200n8 console=tty0 fbcon=map:0 net.ifnames=0

使用 USB 启动时,在开机时只能插一个 USB 磁盘,如果存在多个 USB 磁盘则需要使用分区的 UUID 进行更加精准的启动,但这样可能会导致启动失败。

snap 应用商店打不开

将 Jetson Nano 的系统从 18.04 升级到 20.04 后发现 snap 应用商店打不开,故换成 software 软件中心

sudo apt install ubuntu-software
sudo snap remove snap-store # 删除snap商店
sudo apt purge snapd # 同时清除软件包和软件的配置文件

安装 xrdp 远程桌面

之前一直使用 VNC 进行远程控制,但是电脑上用 VNC 必须安装额外的软件,故换成 xrdp 使用电脑自带的远程桌面连接进行控制,使用以下命令安装并启动(此方法适用于已有桌面环境,没有则可另外安装gnome或xface)

sudo apt install xrdp
sudo systemctl start xrdp # 启动xrdp
sudo systemctl enable xrdp # 开机启动xrdp

远程桌面黑屏 | 闪退 | NVIDIA图标

当你的本机没有注销连接的话,远程桌面就会出现以上情况,尝试了网上的几种解决方法都没有效果,故选择使用 root 账户登录,使用以下命令创建 root 用户后即可远程登录

sudo passwd root

若系统长时间不使用自动锁屏(也可以在设置中找到电源,把息屏时间设置为从不),当重新以 root 登录时可能会遇到报错无法登录,需要进行以下修改

vi /etc/pam.d/gdm-autologin
#注释掉 "auth requied pam_succeed_if.so user != root quiet success"

vi /etc/pam.d/gdm-password
#注释掉 "auth requied pam_succeed_if.so user != root quiet success"

空白桌面优化

启动远程连接之后显示的 Gnome 原始桌面空白并且没有 Dock,故还需要安装扩展工具

sudo apt install gnome-shell-extension-prefs

此时会安装一个名为 Extensions 的软件,中文桌面环境下叫做插件,使用 Win 键可以唤出 Dock,进入应用列表并找到该软件,将里面所有的选项都打开即可。

还可以给 root 用户增加一个配置文件,让XRDP连接时采用与原生桌面一样的配置

sudo -i # 切换到 root 用户
vim ~/.xsessionrc # 添加配置文件
export GNOME_SHELL_SESSION_MODE=ubuntu
export XDG_CURRENT_DESKTOP=ubuntu:GNOME
export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg
sudo systemctl restart xrdp.service # 重启 xrdp

减少画面卡顿

xrdp 默认的网络缓冲区较小,可能会造成卡顿,需要进行调整,首先调整系统的内核参数来调整网络缓冲区大小,编辑 sudo vi /etc/sysctl.conf 文件并添加以下内容

net.core.rmem_default = 6291456
net.core.rmem_max = 8388608
net.core.wmem_default = 6291456
net.core.wmem_max = 8388608

保存文件后,运行 sudo sysctl -p 使配置生效,之后调整 xrdp 配置参数 sudo vi /etc/xrdp/xrdp.ini 找到并修改以下内容

tcp_send_buffer_bytes=6291456
tcp_recv_buffer_bytes=6291456

磁盘自动挂载

因为使用的 SSD 容量较大,故创建了额外的一个 NTFS 分区存放文件,并将其设置为自动挂载。首先找到 磁盘(Disk)应用并打开,选择对应磁盘并选中需要自动挂载的分区,此时界面上会显示分区信息,记下分区对应的 UUID ,接着编辑 sudo vi /etc/fstab ,添加以下内容,重启后生效

UUID=分区的UUID号   /media    ntfs    defaults    0   0
  • 第1列为UUID,此处填写之前查询到的磁盘分区的UUID。
  • 第2列为磁盘分区的挂载目录,即为自己想要挂载的路径。
  • 第3列为磁盘分区的文件系统格式, 即分区信息中显示的TYPE。
  • 第4列为磁盘分区的挂载选项,此处通常设置为defaults即可。
  • 第5列为Linux dump备份选项。
  • 0:表示不使用Linux dump备份。
  • 1:表示使用Linux dump备份。
  • 第6列为fsck选项,即开机时是否使用fsck检查磁盘。
  • 0:表示不检验;
  • 1:挂载点为(/)根目录的分区填写为1;
此作者没有提供个人介绍
最后更新于 2025-01-17