在 Ubuntu 中遇到 mount 错误 是很常见的问题,原因很多。下面按常见错误场景 → 原因 → 修复方法来系统说明。
执行 mount 后,先看错误信息:
sudo mount /dev/sdb1 /mnt
常见提示如:
mount: /mnt: wrong fs type, bad option, missing codepagemount: /mnt: unknown filesystem typemount: /mnt: mount point does not existNTFS is dirtydevice is busy错误
mount point does not exist
解决
sudo mkdir -p /mnt/usb
sudo mount /dev/sdb1 /mnt/usb
错误
wrong fs type, bad superblock
解决 先查看文件系统类型:
sudo blkid /dev/sdb1
指定类型挂载:
sudo mount -t ntfs /dev/sdb1 /mnt
sudo mount -t vfat /dev/sdb1 /mnt
sudo mount -t ext4 /dev/sdb1 /mnt
错误
NTFS is dirty / The disk contains an unclean file system
解决
sudo apt install ntfs-3g
sudo ntfsfix /dev/sdb1
或从 Windows 关闭 快速启动 并正常关机。
错误
bad superblock
解决
sudo fsck -y /dev/sdb1
如 superblock 损坏:
sudo mke2fs -n /dev/sdb1
sudo fsck -b 32768 /dev/sdb1
错误
umount: target is busy
解决
sudo lsof +D /mnt
sudo fuser -m /mnt
结束进程后:
sudo umount -l /mnt
错误
Permission denied
解决
sudo mount -o uid=1000,gid=1000 /dev/sdb1 /mnt
或改权限:
sudo chmod 777 /mnt
错误
can't find UUID
解决
sudo blkid
修改 /etc/fstab:
UUID=xxxx /mnt ext4 defaults 0 2
测试:
sudo mount -a
错误
Read-only file system
解决
sudo mount -o remount,rw /dev/sdb1 /mnt
dmesg | tailblkidfsck/etc/fstabsudo mkdir /mnt/usb
sudo mount -t auto /dev/sdb1 /mnt/usb
如果你能贴出具体的 mount 错误信息(终端原文),我可以给你精准的一行命令修复方案。