如何挽救无法读取的 USB 闪存驱动器

如何挽救无法读取的 USB 闪存驱动器

我有一个 16GB USB 闪存驱动器,不知何故损坏了,甚至fdisk -l找不到它(我收到一条单行错误消息:“无法打开/dev/sdc”)

但是,它正在被附加,并被分配,/dev/sdc如 dmesg 显示:

usb 1-7: new high speed USB device using ehci_hcd and address 69
usb 1-7: New USB device found, idVendor=048d, idProduct=1167
usb 1-7: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 1-7: configuration #1 chosen from 1 choice
scsi68 : SCSI emulation for USB Mass Storage devices
usb-storage: device found at 69
usb-storage: waiting for device to settle before scanning
usb-storage: device scan complete
scsi 68:0:0:0: Direct-Access     XXXXXXXX U167CONTROLLER   0.00 PQ: 0 ANSI: 2
sd 68:0:0:0: Attached scsi generic sg3 type 0
sd 68:0:0:0: [sdc] Attached SCSI removable disk

ls -l /sys/block | grep -vE 'loop|ram'也使用以下方法验证了它:

lrwxrwxrwx. 1 root root 0 Mar 13 04:50 sda -> ../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx. 1 root root 0 Mar 13 14:42 sdb -> ../devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/host67/target67:0:0/67:          0:0:0/block/sdb
lrwxrwxrwx. 1 root root 0 Mar 13 21:20 sdc -> ../devices/pci0000:00/0000:00:1d.7/usb1/1-7/1-7:1.0/host68/target68:0:0/68:          0:0:0/block/sdc
lrwxrwxrwx. 1 root root 0 Mar 13 04:50 sr0 -> ../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0/block/sr0

但是当我发出时,od -N 128 /dev/sdc我收到此单行错误消息:

od: /dev/sdc: No medium found

我不需要 USB 闪存驱动器上的数据,我只需要知道是否有办法让它再次格式化(然后重新格式化)。

这可能吗?如果是这样,我该怎么办?

更新: 我刚刚尝试过:

dd if=/dev/zero of=/dev/sdc1 bs=1M count=6000 conv=fsync

并得到:

dd: writing `/dev/sdc1': No space left on device
1000+0 records in
999+0 records out
1047941120 bytes (1.0 GB) copied, 2.34859 s, 446 MB/s

这表明设备还活着并且正在运行?

这变得有趣了......

答案1

之前的设备名称是吗U167CONTROLLER

设备上的微控制器可能遇到了一些异常情况(完全有可能发生在信誉不佳的制造商身上),需要重新编程。这有点像魔术,您可能只会找到可以对微控制器重新编程的 Windows 程序。

您可以尝试打开闪存驱动器,查看任何芯片上的数字,然后通过 Google 运行它们以找出制造商是谁。然后,您可能会做进一步的研究,看看是否有恢复、编程或“芯片”实用程序可用。没有标准管理此类功能,因此您正在寻找与闪存驱动器内的微控制器或 NAND 芯片的品牌和型号相匹配的东西。

如果存在这样的实用程序,则很有可能 A) 仅适用于 Windows,如所述;B) 中文版。我确实通过这种方式成功恢复了 2GB“Transcend”设备,但突然无缘无故地决定它“里面没有磁盘”。

答案2

看看这个页面:http://www.ardamis.com/2009/07/02/usb-drive-unusable-unformattable-and-reporting-0-bytes-capacity/

..有趣的阅读。简而言之,作者运行 Win 操作系统,检查了一个功能正常的 USB 记忆棒(有故障的记忆棒和功能正常的记忆棒均来自 Sandisk)。他在功能棒上发现了一个 .dll 文件,并在 dll 中发现了一个 URL(创意!),他尝试将其粘贴到浏览器中。原来链接指向了一个在线更新Sandisk驱动的页面!!!

对于这个人来说幸运的是,他正在运行 MS Explorer,其中一些 ActiveX 例程将 USB 记忆棒格式化为“真正像新的一样”状态。不幸的是,对于任何运行 Linux、OS X 和其他操作系统的人来说,“修复站点”会输出以下消息:

“为了安装 Launchpad,请下载必要的 ActiveX 组件。请确保您的浏览器安全设置不会阻止下载提示。按 F5 重新加载页面”。

当然,也可以在 wine 上运行 IE。这就是我要去的......

谢谢,彼得·埃利亚松

顺便说一句,我通过搜索“SM3255AA”遇到了这一切,这是在我的 dmesg(Transcend 4 Gb 棒)中找到的一个短语:

 usb 1-7: new high-speed USB device number 10 using ehci_hcd
 usb 1-7: New USB device found, idVendor=090c, idProduct=3000
 usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
 usb 1-7: Product: SM3255AA MEMORY BAR 
 usb 1-7: Manufacturer: Silicon Motion,Inc. 
 scsi6 : usb-storage 1-7:1.0
 scsi 6:0:0:0: Direct-Access USB MEMORY BAR   1000 PQ: 0 ANSI: 0 CCS
 sd 6:0:0:0: Attached scsi generic sg2 type 0
 sd 6:0:0:0: [sdb] Attached SCSI removable disk

答案3

现在朋友的U盘也有同样的问题。它根本无法安装。

dmesg输出:

[248948.377351] usb 3-1: new high speed USB device number 95 using xhci_hcd
[248948.744276] usb 3-1: ep 0x81 - rounding interval to 128 microframes, ep desc says 255 microframes
[248948.744283] usb 3-1: ep 0x2 - rounding interval to 128 microframes, ep desc says 255 microframes
[248948.745064] scsi23 : usb-storage 3-1:1.0
[248949.744560] scsi 23:0:0:0: Direct-Access              USB MEMORY BAR   1000 PQ: 0 ANSI: 0 CCS
[248950.078968] sd 23:0:0:0: Attached scsi generic sg2 type 0
[248950.079943] sd 23:0:0:0: [sdb] Attached SCSI removable disk

在 中lsusb,它显示为:

Bus 003 Device 095: ID 090c:3000 Feiya Technology Corp.

在摆弄它的时候,它突然被检测到正常并且卷/dev/sdb1被安装了。我lsusb又检查了一下,现在有细微的不同:

Bus 003 Device 094: ID 090c:1000 Feiya Technology Corp. Flash Drive

dmesg看起来也很正常:

[248806.372766] usb 3-1: new high speed USB device number 94 using xhci_hcd
[248806.421753] usb 3-1: ep 0x81 - rounding interval to 128 microframes, ep desc says 255 microframes
[248806.421759] usb 3-1: ep 0x2 - rounding interval to 128 microframes, ep desc says 255 microframes
[248806.422518] scsi22 : usb-storage 3-1:1.0
[248807.905390] scsi 22:0:0:0: Direct-Access                                    PQ: 0 ANSI: 4
[248808.206242] sd 22:0:0:0: Attached scsi generic sg2 type 0
[248808.206667] sd 22:0:0:0: [sdb] 31129600 512-byte logical blocks: (15.9 GB/14.8 GiB)
[248808.208374] sd 22:0:0:0: [sdb] Write Protect is off
[248808.208378] sd 22:0:0:0: [sdb] Mode Sense: 43 00 00 00
[248808.208942] sd 22:0:0:0: [sdb] No Caching mode page present
[248808.208945] sd 22:0:0:0: [sdb] Assuming drive cache: write through
[248808.210793] sd 22:0:0:0: [sdb] No Caching mode page present
[248808.210796] sd 22:0:0:0: [sdb] Assuming drive cache: write through
[248808.211505]  sdb: sdb1
[248808.214592] sd 22:0:0:0: [sdb] No Caching mode page present
[248808.214596] sd 22:0:0:0: [sdb] Assuming drive cache: write through
[248808.214600] sd 22:0:0:0: [sdb] Attached SCSI removable disk
[248808.541071] EXT2-fs (sdb1): warning: mounting unchecked fs, running e2fsck is recommended

经过一番摸索,发现问题很简单:接触不良。当我们插入时稍微按下一点,它就会安装。不然就不会了。稍微压缩 USB 连接器似乎会有所帮助;也许有更好的方法来解决这个问题,但我建议任何遇到此问题的人在尝试重新刷新控制器之前首先尝试排除简单的接触不良问题。

答案4

我的 USB 8 GB 记忆棒 Adata C008 也遇到同样的问题。我在此页面上找到了解决方案: http://flashboot.ru/files/file/312/

我将 USB 记忆棒插入 Windows XP 计算机并运行 Urescue 程序并选中“Build MBR”。 Uresque 程序位于此处: http://depositfiles.com/files/czcmb4e36

相关内容