Linux (ARM64 / Jetson) 挂载 exFAT 移动硬盘排障与离线安装指南

Linux (ARM64 / Jetson) 挂载 exFAT 移动硬盘排障与离线安装指南

1. 故障现象与原因分析

  • 故障现象: 图形界面挂载外接移动硬盘时弹出报错 Error mounting /dev/sda1: unknown filesystem type 'exfat';终端执行 mount 提示 mount: unknown filesystem type 'exfat'。
  • 根源分析: 当前 Linux 内核(如 Tegra/Jetson 平台定制内核)未编译或未加载 exfat 驱动模块,且系统内缺少 FUSE 用户态挂载工具(exfat-fuse)及底层依赖库(libfuse2)。

2. 关键兼容性说明(版本与架构约束)

离线安装 .deb 包时,必须严格匹配系统版本与 CPU 架构,不能跨版本混用:

  1. CPU 架构限制: 米文 / Jetson 等边缘工控机属于 ARM64 (aarch64) 架构,离线安装包文件名结尾必须带有 _arm64.deb(若为 x86 台式机/服务器则需 _amd64.deb)。
  2. Ubuntu 系统版本限制: .deb 动态库依赖于特定版本的 C 运行库(GLIBC)。如将 Ubuntu 22.04 (jammy) 的安装包强行安装在 Ubuntu 20.04 (focal) 上,会导致 GLIBC 版本不匹配报错。
  3. 不同版本的软件包命名差异:
    • Ubuntu 22.04 (Jammy): 挂载驱动为 exfat-fuse,底层依赖为 libfuse2,管理工具为 exfatprogs。
    • Ubuntu 20.04 / 18.04: 挂载驱动为 exfat-fuse,管理工具通常为 exfat-utils。

3. 完整离线下载链接列表 (以 Ubuntu 22.04 ARM64 为例)

当设备因内网防火墙拦截 HTTP 80 端口导致 apt update 失败时,需使用能上网的电脑/手机直接点击或复制以下完整直链下载:

包 1:底层依赖 libfuse2

  • 中科大源 (USTC): [https://mirrors.ustc.edu.cn/ubuntu-ports/pool/main/f/fuse/libfuse2_2.9.9-5ubuntu3_arm64.deb](https://mirrors.ustc.edu.cn/ubuntu-ports/pool/main/f/fuse/libfuse2_2.9.9-5ubuntu3_arm64.deb)
  • 清华源 (Tsinghua): [https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/pool/main/f/fuse/libfuse2_2.9.9-5ubuntu3_arm64.deb](https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/pool/main/f/fuse/libfuse2_2.9.9-5ubuntu3_arm64.deb)
  • Ubuntu 官方源: [http://ports.ubuntu.com/ubuntu-ports/pool/main/f/fuse/libfuse2_2.9.9-5ubuntu3_arm64.deb](http://ports.ubuntu.com/ubuntu-ports/pool/main/f/fuse/libfuse2_2.9.9-5ubuntu3_arm64.deb)

包 2:挂载驱动 exfat-fuse

  • 中科大源 (USTC): [https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/f/fuse-exfat/exfat-fuse_1.3.0+git20220115-2_arm64.deb](https://mirrors.ustc.edu.cn/ubuntu-ports/pool/universe/f/fuse-exfat/exfat-fuse_1.3.0+git20220115-2_arm64.deb)
  • 清华源 (Tsinghua): [https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/pool/universe/f/fuse-exfat/exfat-fuse_1.3.0+git20220115-2_arm64.deb](https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/pool/universe/f/fuse-exfat/exfat-fuse_1.3.0+git20220115-2_arm64.deb)
  • Ubuntu 官方源: [http://ports.ubuntu.com/ubuntu-ports/pool/universe/f/fuse-exfat/exfat-fuse_1.3.0+git20220115-2_arm64.deb](http://ports.ubuntu.com/ubuntu-ports/pool/universe/f/fuse-exfat/exfat-fuse_1.3.0+git20220115-2_arm64.deb)

其他系统版本的包查找地址: 访问 Ubuntu Packages 官方检索页,选择对应的 Ubuntu 版本代号(如 focal / jammy / noble),搜索 exfat-fuse 并选择 arm64 架构即可获取当期有效直链。

4. 离线安装与挂载 SOP 步骤

第一步:准备安装包

将下载好的 libfuse2_xxx_arm64.deb 与 exfat-fuse_xxx_arm64.deb 文件拷贝至 U 盘,并传入工控机本地目录。

第二步:按顺序安装(解决依赖问题)

在 .deb 所在目录下打开终端,依次运行:

Bash 复制代码
# 1. 优先安装底层依赖库 libfuse2
sudo dpkg -i libfuse2_*.deb

# 2. 安装 exfat-fuse 挂载驱动包
sudo dpkg -i exfat-fuse_*.deb

# 3. 修复并完成软件包配置
sudo dpkg --configure -a

第三步:挂载硬盘

离线包安装完成后,可重新插拔移动硬盘(图形界面会自动挂载),或执行手动挂载:

bash 复制代码
# 创建挂载点
sudo mkdir -p /media/autocity/T9

# 使用 exfat-fuse 驱动手动挂载
sudo mount -t exfat-fuse /dev/sda1 /media/autocity/T9

5. 踩坑总结与经验备忘

  1. exfatprogs 与 exfat-fuse 的分工:
    • exfatprogs 仅提供磁盘校验(fsck.exfat)与格式化(mkfs.exfat)工具,不包含挂载驱动。
    • 如果 Linux 内核缺少 exFAT 模块,必须依赖 exfat-fuse 才能进行挂载。
  2. dpkg 不会自动下载依赖: dpkg -i 会严格按照依赖关系提示缺失。如果直接安装 exfat-fuse 报错缺少 libfuse2,必须先手动安装 libfuse2。
相关推荐
Android系统攻城狮3 小时前
Linux Gstreamer深度解析之gst_audio_ring_buffer_parse_caps调用流程与实战(八十)
linux·运维·服务器·gstreamer音视频·音视频进阶
l1t3 小时前
DeepSeek总结的 DuckDB 2.0 文档新内容
服务器·网络·数据库
erzong2313 小时前
Linux网络:UDP编程踩坑日记
linux·网络·udp
盐焗鹌鹑蛋3 小时前
【Linux】线程库与封装
linux
知产xiao_xin3 小时前
专利立法及修改
经验分享·笔记·知识产权
qq_284274053 小时前
S7-1200 PLC硬件与启保停实训:CPU选型与DC/DC/DC、循环扫描五阶段、博途组态及电动机启停自锁梯形图(含考点)
笔记·学习·自动化·制造
lwx9148523 小时前
Deepin操作系统
linux·服务器·网络
Lsetea3 小时前
OpenSSL指定-cipher仍协商TLS1.3:证书排查中的套件与协议边界
运维·https·ssl证书·openssl·tls
先知后行。3 小时前
进程间通信(IPC)
linux·运维·服务器
问心无愧05134 小时前
[GXYCTF2019]Ping Ping Ping
android·笔记