若系统未检测到U盘,需先确认硬件连接与设备识别状态。
lsblk或fdisk -l命令列出所有块设备,若U盘未出现在列表中(如无/dev/sdb或/dev/sdb1),则可能是硬件故障(如U盘损坏)或USB控制器驱动问题。挂载U盘需指定一个空目录作为挂载点,若目录不存在或权限不当,会导致操作失败。
sudo mkdir -p /mnt/usb命令创建目录(路径可自定义,如/media/usb)。sudo chmod 755 /mnt/usb(允许所有者读写执行,其他用户读执行)。U盘的文件系统(如NTFS、FAT32、ext4)需与挂载命令中的-t参数一致,否则无法识别;若文件系统损坏,也会导致挂载失败。
lsblk -f或sudo blkid命令查看U盘分区的文件系统类型(如TYPE="ntfs"、TYPE="vfat")。sudo mount -t ntfs /dev/sdb1 /mnt/usb;FAT32格式用sudo mount -t vfat /dev/sdb1 /mnt/usb(若需读写支持,需安装ntfs-3g或dosfstools包)。sudo umount /dev/sdb1),再用sudo fsck /dev/sdb1命令修复(修复前请备份重要数据)。SELinux(安全增强模块)可能阻止挂载操作,尤其是当U盘文件系统为NTFS/FAT32时。
sudo setenforce 0命令将其设为宽松模式(重启后恢复默认),测试是否能挂载。sudo chcon -t usb_device_t /mnt/usb(需根据实际情况调整上下文类型)。U盘驱动依赖usb_storage、uhci_hcd、ehci_hcd等内核模块,若模块未加载,系统无法识别U盘。
sudo modprobe usb_storage加载USB存储模块;若为USB 2.0/3.0接口,需加载uhci_hcd(USB 2.0)或ehci_hcd(USB 3.0)模块。lsmod | grep usb命令查看是否包含上述模块,若未加载则手动加载。若挂载点已被其他程序使用(如已挂载到其他目录),或U盘被其他进程(如文件管理器、备份工具)锁定,会导致挂载失败。
df -h或mount命令查看U盘是否已挂载,若已挂载需先卸载(sudo umount /dev/sdb1)。lsof /dev/sdb1或fuser -v /dev/sdb1命令查看占用U盘的进程,终止相关进程后再挂载(sudo kill -9 <PID>)。若上述步骤均无法解决,可能是U盘本身存在物理损坏(如电路故障、存储芯片损坏)。
通过以上步骤逐一排查,可解决大部分CentOS挂载U盘无反应的问题。若问题仍未解决,建议查看系统日志(journalctl -xe或dmesg | grep usb)获取更详细的错误信息,以便进一步诊断。