我有一张 16GB 的 SD 卡,当我将其连接到计算机时,会出现无法读取超级块的错误(在 Ubuntu 中)。在网上搜索后,我看到了一些使用 testdisk 工具的解决方案,并决定尝试一下。在一个例子中,它提到备份我的驱动器,所以我这样做了:
dd if=/(location of sd card) of=/(my pendrive location) status=progress
我给了:
dd if=/dev/sdb of=/dev/sdc status=progress
,直到它向我的 U 盘写入了大约 100MB 的数据后,我才意识到这是一个错误。我突然取消了操作(Ctrl C),然后重新启动以检查 U 盘是否损坏。现在 U 盘名称已更改为我的 SD 卡名称,存储(我在 Windows 磁盘管理器选项中检查)仅显示 14.56GB,而不是 256 GB,并且有 218.31 GB 未分配。
我在 Ubuntu 上尝试了 testdisk,幸运的是它显示了我的 pendrive 的原始名称和大小,但当我使用相同的工具列出内容时,它只显示我的 SD 卡的内容(当我使用 testdisk 和 SD 卡时我看到了)有什么方法可以恢复这两个设备,或者至少恢复我的 256 GB pendrive?任何帮助非常感谢!
答案1
好的,我做了什么:我使用了 testdisk 并尝试了所有选项,例如将备份引导扇区复制到原始引导扇区上、重建引导扇区等。所有看起来合适的选项。我甚至尝试了修复 FAT 选项。无论如何,SD 卡现在可以使用;我不知道哪个选项有效。
关于 pendrive:我使用 Windows 磁盘管理器删除了 256 GB pendrive 的 16GB 分区。然后我尝试了旧版本的 Easeus recovery pro(某些版本 5.1),如 youtube 视频中所示,我恢复了文件。但最终结果显示许多照片被毁坏了。我不确定照片是在格式化过程中还是在恢复过程中被毁坏的。然后我在同一个驱动器上使用 testdisk 的 PhotoRec,它只恢复了未损坏的文件,我了解到我丢失了大约 3k 张照片。我编写了一个简单的 python 脚本,根据分辨率将所有这些恢复的图像排序为屏幕截图或我的相机照片或 whatsapp/下载的垃圾照片。