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

ate*_*iob 20 partition data-recovery usb-drive flash-memory

我有一个 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
Run Code Online (Sandbox Code Playgroud)

我也验证了它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
Run Code Online (Sandbox Code Playgroud)

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

od: /dev/sdc: No medium found
Run Code Online (Sandbox Code Playgroud)

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

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

更新:我刚试过:

dd if=/dev/zero of=/dev/sdc1 bs=1M count=6000 conv=fsync
Run Code Online (Sandbox Code Playgroud)

并得到:

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
Run Code Online (Sandbox Code Playgroud)

哪个告诉设备是活的并且在踢?

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

Law*_*ceC 11

U167CONTROLLER之前是设备名称吗?

可能是设备上的微控制器遇到了一些异常情况(完全有可能在不完全有信誉的制造商中)并且需要重新编程。这有点像黑色艺术,您可能只会找到可以重新编程微控制器的 Windows 程序。

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

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