我有一个 Transcend JetFLash 2GB USB 驱动器。它运行良好,我偶尔会使用它。
突然间,它在所有版本的 Windows 上都停止工作。
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 上运行)可能是导致该问题的原因,尽管我认为它不会阻止驱动器被识别。