全新安装 Ubuntu 18.04。无法识别 USB 存储设备

Dav*_* La 5 usb-storage 18.04

最近在新硬盘上安装了 18.04。一切似乎都有效,包括 USB 键盘/鼠标,但不是 USB 存储设备。USB 存储设备(我尝试了三种不同的)都可以在运行 Windows 和 Linux 的其他计算机上运行。

这是lsusb(USB存储设备是PNY)的输出:

Bus 002 Device 004: ID 04f2:0116 Chicony Electronics Co., Ltd KU-2971/KU-0325 Keyboard
Bus 002 Device 003: ID 046d:c077 Logitech, Inc. M105 Optical Mouse
Bus 002 Device 007: ID 154b:fa64 PNY 
Bus 002 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Run Code Online (Sandbox Code Playgroud)

这是输出dmesg

[  339.995508] usb 2-1.3: new high-speed USB device number 7 using ehci-pci
[  340.104627] usb 2-1.3: New USB device found, idVendor=154b, idProduct=fa64, bcdDevice=10.75
[  340.104632] usb 2-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  340.104636] usb 2-1.3: Product: USB 3.0 FD
[  340.104639] usb 2-1.3: Manufacturer: PNY Technologies
[  340.104642] usb 2-1.3: SerialNumber: IN1311210000000000000001
[  340.126765] uas: Unknown symbol usb_stor_sense_invalidCDB (err 0)
[  340.126800] uas: Unknown symbol usb_stor_adjust_quirks (err 0)
Run Code Online (Sandbox Code Playgroud)

最后,fdisk只显示硬盘:

sudo fdisk -l
Disk /dev/sda: 446 GiB, 478888853504 bytes, 935329792 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x26f11458

Device     Boot Start       End   Sectors  Size Id Type
/dev/sda1  *     2048 935327743 935325696  446G 83 Linux
Run Code Online (Sandbox Code Playgroud)

尝试修复:

  • 我试过将设备列入黑名单
  • 我尝试过奇怪的解决方案,例如将 nvidia 驱动程序从 nouveau 驱动程序中切换
  • 我试过更新到最新的内核。
  • 这个问题似乎与软件/操作系统问题无关,因为这个 PNY 驱动器也是一个可以启动的 USB 实时记忆棒。

仍然无法连接任何 USB 存储设备。请帮忙!

小智 6

来自红帽:

解决

尝试通过忽略安装配置来手动加载 usb_storage 模块。

生的

modprobe --ignore-install usb_storage
modprobe uas
Run Code Online (Sandbox Code Playgroud)

根本原因

检查usb_storage模块是否被列入黑名单。uas 模块依赖于 usb_storage 模块。由于usb_storage被列入黑名单,所以无法加载uas,并且检测不到usb。