Ubuntu挂载USB闪存盘技巧
小樊
33
2025-12-25 03:53:22
Ubuntu 挂载 USB 闪存盘技巧
一、快速上手流程
- 识别设备与分区
- 插入 U 盘后查看块设备与文件系统:lsblk、lsblk -f、dmesg | tail,确认设备名(如 /dev/sdb1)与文件系统(如 vfat/ntfs/ext4)。
- 创建挂载点
- 建议使用专用目录:sudo mkdir -p /mnt/usb;权限可按需设为 755。
- 执行挂载
- 按文件系统选择命令:
- FAT32:sudo mount -t vfat /dev/sdb1 /mnt/usb
- NTFS:sudo mount -t ntfs-3g /dev/sdb1 /mnt/usb(未安装时先执行:sudo apt install ntfs-3g)
- EXT4:sudo mount /dev/sdb1 /mnt/usb
- 访问与卸载
- 访问:ls /mnt/usb;卸载:sudo umount /mnt/usb(或 sudo umount /dev/sdb1)。
- 验证
二、常见问题与快速修复
- 未知文件系统类型 ‘ntfs’
- 安装 NTFS 支持:sudo apt install ntfs-3g,再执行挂载。
- 设备写保护或只读
- 检查 U 盘物理写保护开关;必要时以只读方式挂载:sudo mount -o ro /dev/sdb1 /mnt/usb。
- 目标忙无法卸载
- 关闭占用窗口/进程,或使用延迟卸载:sudo umount -l /mnt/usb。
- 文件名乱码(VFAT/NTFS)
- 挂载时显式指定字符集:sudo mount -t vfat -o iocharset=utf8 /dev/sdb1 /mnt/usb。
- 无法挂载或异常掉盘
- 先做文件系统检查:
- FAT32:sudo dosfsck -a /dev/sdb1
- EXT4:sudo fsck.ext4 -y /dev/sdb1
- NTFS:sudo ntfsfix /dev/sdb1
三、自动挂载与开机挂载
- 使用 /etc/fstab(按 UUID 更稳定)
- 获取 UUID:sudo blkid;编辑:sudo nano /etc/fstab
- 示例(将 UUID 与挂载点替换为你的实际值):
- UUID=679C-87F2 /mnt/usbdrive vfat defaults 0 2
- 其他文件系统把 vfat 换为 ntfs-3g/ext4;测试:sudo mount -a
- 使用 udev 规则实现插拔自动挂载
- 新建规则:sudo nano /etc/udev/rules.d/99-usb-mount.rules
- 示例(按设备节点自动挂载到 /mnt/usb/<内核名>):
- ACTION==“add”, KERNEL==“sd[b-z][0-9]*”, SUBSYSTEMS==“usb”, SUBSYSTEM==“block”, ENV{ID_FS_USAGE}==“filesystem”, RUN{program}+=“/usr/bin/systemd-mount --no-block --automount=yes --collect $devnode /mnt/usb/%k”
- ACTION==“remove”, KERNEL==“sd[b-z][0-9]*”, RUN+=“/bin/umount -l /mnt/usb/%k”, RUN+=“/bin/rmdir /mnt/usb/%k”
- 使规则生效:sudo udevadm control --reload-rules && udevadm trigger
- 桌面环境自动挂载
- Ubuntu 桌面版通常插入即自动挂载到 /media/$USER/卷标;无图形界面或服务器版需手动或借助上述自动挂载方案。
四、实用建议与注意事项
- 优先使用分区设备(如 /dev/sdb1),不要直接挂载整盘(如 /dev/sdb)。
- 服务器/无头环境建议在 /mnt 下创建专用目录(如 /mnt/usb),避免使用含空格的路径。
- 多 U 盘场景用 UUID 或按 KERNEL 动态创建子目录(如 /mnt/usb/%k),减少设备名漂移带来的问题。
- 执行 umount 前确保当前工作目录不在挂载点内,且无程序占用(如文件管理器、终端、后台进程)。
- 生产环境谨慎在 /etc/fstab 中使用 noauto 之外的自动挂载选项;如需开机挂载,务必先用 sudo mount -a 验证。