Windows 和 BIOS 无法识别 USB 闪存,但在 Linux 中运行正常

Windows 和 BIOS 无法识别 USB 闪存,但在 Linux 中运行正常

我有一个 Transcend JetFLash 2GB USB 驱动器。它运行良好,我偶尔会使用它。

突然间,它在所有版本的 Windows 上都停止工作。USB 设备无法识别

未知设备

BIOS 也无法识别 USB 驱动器。它不会显示在可启动设备列表中。(它之前会显示在列表中)

但是 USB 驱动器在我的 Linux Mint 11 操作系统上运行良好。

运行 dmesg 会出现此情况

[  941.812192] usb 1-2: new high speed USB device using ehci_hcd and address 4
[  941.936178] usb 1-2: device descriptor read/64, error -71
[  942.164188] usb 1-2: device descriptor read/64, error -71
[  942.380189] usb 1-2: new high speed USB device using ehci_hcd and address 5
[  942.504138] usb 1-2: device descriptor read/64, error -71
[  942.732179] usb 1-2: device descriptor read/64, error -71
[  942.948154] usb 1-2: new high speed USB device using ehci_hcd and address 6
[  943.364134] usb 1-2: device not accepting address 6, error -71
[  943.476172] usb 1-2: new high speed USB device using ehci_hcd and address 7
[  943.892140] usb 1-2: device not accepting address 7, error -71
[  943.892191] hub 1-0:1.0: unable to enumerate USB device on port 2
[  944.296190] usb 2-2: new full speed USB device using uhci_hcd and address 3
[  944.438251] usb 2-2: not running at top speed; connect to a high speed hub
[  944.709928] usbcore: registered new interface driver uas
[  944.729999] Initializing USB Mass Storage driver...
[  944.730509] scsi6 : usb-storage 2-2:1.0
[  944.730908] usbcore: registered new interface driver usb-storage
[  944.730917] USB Mass Storage support registered.
[  945.736320] scsi 6:0:0:0: Direct-Access     JetFlash Transcend 2GB    8.07 PQ: 0 ANSI: 2
[  945.744547] sd 6:0:0:0: Attached scsi generic sg1 type 0
[  945.753316] sd 6:0:0:0: [sdb] 3944448 512-byte logical blocks: (2.01 GB/1.88 GiB)
[  945.758274] sd 6:0:0:0: [sdb] Write Protect is off
[  945.758288] sd 6:0:0:0: [sdb] Mode Sense: 03 00 00 00
[  945.765167] sd 6:0:0:0: [sdb] No Caching mode page present
[  945.765181] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[  945.784309] sd 6:0:0:0: [sdb] No Caching mode page present
[  945.784323] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[  946.239512]  sdb: sdb1
[  946.257279] sd 6:0:0:0: [sdb] No Caching mode page present
[  946.257292] sd 6:0:0:0: [sdb] Assuming drive cache: write through
[  946.257302] sd 6:0:0:0: [sdb] Attached SCSI removable disk

看起来 USB 驱动器有问题。它无法在任何运行 Windows 的计算机上被识别。

有没有什么办法解决这一问题?

知道为什么会发生此问题吗?

答案1

您可以尝试以下方法:

  • 连接到计算机后,拔下电源,几秒钟后再重新插入。
  • 尝试在另一个 USB 端口上使用 USB 设备;如果它在另一个端口上运行良好,则原始端口可能出现故障。
  • 关闭电脑并长时间断开电源,以便主板上的所有电荷都已消散。对于笔记本电脑,取出电池也会产生同样的作用。
  • 尝试在另一台计算机上使用该 USB 设备;如果它在另一台计算机上可以正常工作,则说明问题出在原来的设备上。
  • 如果两台计算机具有相同的操作系统,但其中一台可以运行,而另一台却不能,则问题更可能是硬件问题。
  • 如果计算机的操作系统不同,而它在其中一个操作系统下可以正常运行,则可能是其中一个操作系统存在兼容性问题。不过,也可能是硬件问题。
  • 在设备管理器中卸载所有 USB 控制器并重新启动系统。这将允许 Windows 重新安装所有 USB 控制器。
  • 确保 BIOS 是最新的(危险!)
  • 确保芯片组驱动程序是最新的(主板)
  • 将操作系统恢复到一切正常运行的状态。
  • 放弃这个 USB,因为它纯粹是浪费。

答案2

如果第一个扇区由于某种原因被覆盖,它可能不会显示在 BIOS 中。

Linux 日志中有如下行:

[  944.438251] usb 2-2: not running at top speed; connect to a high speed hub

如果您的计算机兼容 USB 2.0,并且闪存驱动器也兼容 USB 2.0,则这种情况很不寻常 - 我不相信他们自 1998 年左右以来就只制造了 USB 1.1 的机器。此闪存驱动器是否连接到可能出现故障的集线器(它们可能会随着时间的推移而出现故障)?它是否连接到延长线?如果连接线或连接器损坏或出现某种不当情况,设备可能无法正确协商 USB 2.0 速度。这可能会导致 Windows 抱怨但不会导致 Linux 抱怨 - Windows 在 USB 设备速度和检测方面的问题比 Linux 多。

由于这是 Transcend 设备,因此你可能会尝试运行 Transcend 恢复实用程序备份数据后即可使用。尽管它声称是一款“在线”工具,但它是可下载并运行的可执行文件。

我还认为,防病毒软件(您可能在 Windows 上运行,而不是在 Linux 上运行)可能是导致该问题的原因,尽管我认为它不会阻止驱动器被识别。

相关内容