我的 USB 闪存盘有问题。它是金士顿 Datatraveler。我经常使用它,但从昨天开始它就损坏了。我不记得在卸载之前是否将其取出(或安全移除,因为我主要在 Win7 - VM Ubuntu 机器上使用它),但这似乎是最可能的原因。
我搜索了又搜索,但似乎每个人最终都放弃了在这种情况下尝试挽救数据。但是,我很固执,我需要你的帮助。
以下是我目前所做的诊断:
walle@earth:~$ sudo fdisk -l /dev/sdb
walle@earth:~$ sudo fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 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
Disk identifier: 0x0009a95f
Device Boot Start End Blocks Id System
/dev/sda1 * 2046 41943039 20970497 5 Extended
/dev/sda5 2048 6000639 2999296 82 Linux swap / Solaris
/dev/sda6 6002688 41943039 17970176 83 Linux
walle@earth:~$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 80ee:0021 VirtualBox USB Tablet
Bus 001 Device 006: ID 0c76:0005 JMTek, LLC. Transcend Flash disk
walle@earth:~$ ls -laR /dev/disk
/dev/disk:
total 0
drwxr-xr-x 5 root root 100 Sep 21 12:22 .
drwxr-xr-x 16 root root 4180 Sep 21 12:22 ..
drwxr-xr-x 2 root root 240 Sep 21 12:22 by-id
drwxr-xr-x 2 root root 160 Sep 21 12:22 by-path
drwxr-xr-x 2 root root 80 Sep 21 12:22 by-uuid
/dev/disk/by-id:
total 0
drwxr-xr-x 2 root root 240 Sep 21 12:22 .
drwxr-xr-x 5 root root 100 Sep 21 12:22 ..
lrwxrwxrwx 1 root root 9 Sep 21 11:08 ata-VBOX_CD-ROM_VB0-01f003f6 -> ../../sr0
lrwxrwxrwx 1 root root 9 Sep 21 11:29 ata-VBOX_HARDDISK_VB0f06d815-0d4e855f -> ../../sda
lrwxrwxrwx 1 root root 10 Sep 21 11:28 ata-VBOX_HARDDISK_VB0f06d815-0d4e855f-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Sep 21 11:08 ata-VBOX_HARDDISK_VB0f06d815-0d4e855f-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Sep 21 11:08 ata-VBOX_HARDDISK_VB0f06d815-0d4e855f-part6 -> ../../sda6
lrwxrwxrwx 1 root root 9 Sep 21 11:29 scsi-SATA_VBOX_HARDDISK_VB0f06d815-0d4e855f -> ../../sda
lrwxrwxrwx 1 root root 10 Sep 21 11:28 scsi-SATA_VBOX_HARDDISK_VB0f06d815-0d4e855f-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Sep 21 11:08 scsi-SATA_VBOX_HARDDISK_VB0f06d815-0d4e855f-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Sep 21 11:08 scsi-SATA_VBOX_HARDDISK_VB0f06d815-0d4e855f-part6 -> ../../sda6
lrwxrwxrwx 1 root root 9 Sep 21 12:07 usb-GENERIC_USB_Mass_Storage-0:0 -> ../../sdb
/dev/disk/by-path:
total 0
drwxr-xr-x 2 root root 160 Sep 21 12:22 .
drwxr-xr-x 5 root root 100 Sep 21 12:22 ..
lrwxrwxrwx 1 root root 9 Sep 21 11:08 pci-0000:00:01.1-scsi-0:0:0:0 -> ../../sr0
lrwxrwxrwx 1 root root 9 Sep 21 12:07 pci-0000:00:0b.0-usb-0:1:1.0-scsi-0:0:0:0 -> ../../sdb
lrwxrwxrwx 1 root root 9 Sep 21 11:29 pci-0000:00:0d.0-scsi-1:0:0:0 -> ../../sda
lrwxrwxrwx 1 root root 10 Sep 21 11:28 pci-0000:00:0d.0-scsi-1:0:0:0-part1 -> ../../sda1
lrwxrwxrwx 1 root root 10 Sep 21 11:08 pci-0000:00:0d.0-scsi-1:0:0:0-part5 -> ../../sda5
lrwxrwxrwx 1 root root 10 Sep 21 11:08 pci-0000:00:0d.0-scsi-1:0:0:0-part6 -> ../../sda6
/dev/disk/by-uuid:
total 0
drwxr-xr-x 2 root root 80 Sep 21 12:22 .
drwxr-xr-x 5 root root 100 Sep 21 12:22 ..
lrwxrwxrwx 1 root root 10 Sep 21 11:08 1587b411-663d-4b75-93e0-06ed4f76f55c -> ../../sda5
lrwxrwxrwx 1 root root 10 Sep 21 11:08 28c80af8-f546-46ec-9b63-38cbd7c0b9f2 -> ../../sda6
GParted 无法检测到该设备,gnome-disk-utility 可以检测到,但在“容量”下显示“未检测到媒体”。
testdisk 也检测不到它。
此外,Win 7 上的症状是驱动器可见,但无法在资源管理器中访问(尝试浏览时显示“请将磁盘插入可移动磁盘 F:”,尝试运行 chkdsk 时显示“无法打开卷进行直接访问。”)。
当我将它插入 Vista 计算机时,我的希望突然升起:它检测到它并可以卸载它。我仍然无法访问那里的任何内容,但是当我按名称搜索某些文件时,它们会显示在结果中,尽管我仍然无法打开它们。
如果您对我如何恢复数据有任何想法,请帮忙。
任何帮助将非常感激。
答案1
您应该尝试使用以下方法获取驱动器的映像
(见GNU ddrescue 手册如何使用此工具)。不应安装驱动器。对于您的机器,类似下面的命令可能能够创建记忆棒的映像:
sudo ddrescue -f -n /dev/sdb /home/earthling/rescue.dd /home/earthling/logfile.dd
成功后,我们现在可以尝试从该映像中恢复文件,而不会对仍然驻留在 USB 驱动器上的数据造成任何进一步的损坏或风险。
我们可能会尝试使用取决于我们现有的格式(ext4、NTFS、FAT32……?)的工具来修复文件系统。
或者照相记录来自
显然,您已经安装的套件可能能够从此类映像中恢复单个文件(但不是文件名)。请参阅PhotoRec 教程了解详情。
photorec /home/earthling/rescue.dd
答案2
尝试一个名为 r-linux 的程序。下载自这里