玩Linux的朋友,大概率都遇到过「插入U盘读不出来」的坑——不是识别不到设备,就是提示文件系统不支持。

注意事项:① 插入U盘后,用 lsblk 或 sudo fdisk l 确认U盘设备名(通常是/dev/sdb1、/dev/sdc1,别搞混成系统盘/dev/sda);② 所有命令需用sudo获取权限,避免权限不足报错。

打开网易新闻 查看精彩图片

挂载前先完成这2步:

  1. 查看U盘设备名(关键!):执行 lsblk,找到「RM=1」(可移动设备)的条目,后面的分区名就是设备名(比如sdb1)。

  2. 创建挂载点(相当于给U盘在Linux里找个“文件夹入口”):执行 sudo mkdir p /mnt/usb(/mnt/usb可自定义,比如/mnt/myusb)。

后续挂载,只需要替换「设备名」和「挂载点」,按格式对应执行命令即可。

分格式挂载教程 1. vfat格式(FAT32,最通用,老U盘/小容量U盘常用)

Linux默认支持vfat,无需额外安装软件,直接挂载即可,注意解决中文乱码问题:

挂载命令:sudo mount t vfat o iocharset=utf8 /dev/sdb1 /mnt/usb

说明:o iocharset=utf8 是关键,避免中文文件名乱码;如果不需要中文支持,直接简化为 sudo mount /dev/sdb1 /mnt/usb 即可。

2. NTFS格式(Windows常用,大容量U盘/移动硬盘首选)

Linux内核默认不支持NTFS读写,需先安装ntfs3g驱动,再挂载(不同发行版安装命令不同):

1. 安装驱动:

Ubuntu/Debian:sudo apt update && sudo apt install ntfs3g

CentOS/RHEL:sudo yum install epelrelease && sudo yum install ntfs3g

2. 挂载命令:sudo mount t ntfs3g /dev/sdb1 /mnt/usb

注意:安装一次驱动,后续挂载无需重复安装;如果挂载时报“设备被占用”,用 sudo fuser m u /dev/sdb1 查看占用进程, kill 进程后再挂载。

3. exFAT格式(大容量U盘专用,兼容Windows和Mac)

exFAT是微软专利格式,Linux默认不支持,需安装exfatfuse和exfatutils工具包,步骤和NTFS类似:

安装工具:

Ubuntu/Debian:sudo apt install exfatfuse exfatutils

CentOS/RHEL/Fedora:sudo dnf install exfatutils fuseexfat

Arch Linux:sudo pacman S exfatutils

挂载命令:sudo mount t exfat /dev/sdb1 /mnt/usb

补充:Linux 5.4以上内核有原生exFAT支持,但多数发行版未默认启用,安装工具包是最稳妥的方法。

补充

  1. 卸载U盘:绝对不能直接拔! 执行 sudo umount /mnt/usb 或 sudo umount /dev/sdb1,提示无报错,再拔U盘,否则会损坏数据。

  2. 挂载失败排查:

提示“unknown filesystem type”:大概率是没装对应驱动(NTFS/exFAT),回去安装对应工具即可。

提示“mount point does not exist”:挂载点没创建,重新执行 sudo mkdir p /mnt/usb。

识别不到设备:换USB接口,或用lsusb 检查U盘是否被识别。

3. 自动挂载(可选):如果经常用同一个U盘,可修改/etc/fstab配置(需用UUID,避免设备名变动),新手建议先熟悉手动挂载,再尝试自动挂载。