有没有办法从被dd覆盖的存储设备中恢复文件?


16

我是个白痴,我是用写的图像到USB驱动器dd,而不是打字的时候/dev/sdb我输入/dev/sdd并写下了135MB图像到我的750GB外部HARDRIVE满档。是否有可能恢复文件或dd将驱动器完全清零?请帮忙,因为这是我有生以来的最低点之一。

dd在5秒钟内完成了135mb图像的写入,所以我没有机会停止它。到我知道发生了什么事时,已经太迟了。命令如下:

sudo dd if=generic.img of=/dev/sdd bs=1M

EDIT2:外部硬盘的文件系统是FAT32(我已经有一段时间了,而FAT32是当时最通用的FS)。我也有一个2TB驱动器,我打算将大多数文件从750gb移到其中,如果需要,我可以用它来将恢复的文件转移到其中。


您是否在135mb处中止了dd命令?
viyyer 2012年

dd在5秒钟内完成了135 IMG的编写,因此我没有机会停止它。到我知道发生了什么事的时候。
japzone 2012年

它是ext4文件系统吗?
viyyer 2012年

1
如果可能的话,所有操作都应该在驱动器的映像上完成,而不是在驱动器本身上执行。如果无法做到这一点,请务必确保驱动器已以只读方式安装。相信我,很容易不小心使事情变得更糟……
不错,

Answers:


8

当驱动器被意外覆盖时,您将需要数据恢复工具来还原数据的剩余部分。如果为运行dd135 MB的映像而发生这种情况,那么驱动器的这些部分肯定已经消失并且无法挽救。

通过安装

测试盘 安装测试盘

您也许可以恢复部分文件。包括在TestDisk套件中,您还将找到PhotoRec工具,该工具可帮助恢复单个文件,即使在testdisk无法恢复分区或驱动器本身存在硬件缺陷的情况下也是如此。

TestDisk / PhotoRec也可以在驱动器的映像上运行(如该答案所建议)


最后,我放弃了恢复数据的操作,因为我想要的大多数文件都不是通用格式,也不为所支持photorec。那好吧。
japzone

@japzone:如果它是FAT32,则Windows恢复工具可能还不错。
塔卡特

不,没有这种运气。看起来好像dd覆盖了足够多的信息,几乎无法恢复。文件恢复工具可以工作,但是,正如我上面所说,任何文件恢复工具都不支持我想恢复的大多数文件。
japzone

3

您可以首先尝试从HD中恢复文件。不过,最主要的方法是尝试仅恢复某些类型的文件(jpg,doc,rar,zip,htm,bmp和许多其他文件),因此,我认为这无助于恢复所有内容。

基本上,我会尝试做的是:

sudo foremost -v -t all -i /dev/sdd -o ~/DISK_RECOVERY_FOLDER

当命令扫描所有sdd HD时,请用手指交叉(尽管这会花费很多时间)

(可选)您可以将整个750Gb HD dd到具有足够空间的更大驱动器上,然后在该映像文件上运行,而不是(不是最先写入该文件,....只是为了提高速度,如果您想在该文件上运行多个恢复工具图片)。就像是_

sudo dd -if=/dev/sdd -of=image.dd

并将最主要的命令更改为:

sudo foremost -v -t all -i image.dd -o ~/DISK_RECOVERY_FOLDER

希望这可以帮助


1

DD AFAIK连续写入文件,因此您丢失了磁盘前750 mb中的所有内容。

我认为要做的第一件事是尝试并尽可能备份整个映像,这样,如果您尝试使用一种工具并更改了文件系统,则可以使用另一种工具来查看其效果是否更好。

要备份整个磁盘映像,您可能需要另一个750GB的硬盘驱动器才能将映像复制到其中。我将使用clonezilla的Live CD / USB并复制文件以备份整个磁盘映像。

我在恢复分区表方面非常成功的工具之一是testdisk。我建议使用System Rescue CD,然后使用CD或USB引导它。如果安装了64位操作系统,请记住一件事,在进行64位系统救援时进行引导,因为如果/分区完全可用,则chroot仅可以使用相似的内核来修复安装程序。

引导至系统应急CD并运行testdisk。使用菜单选择分析,看看是否找到分区表。我认为您将需要进行更深入的搜索以通过蛮力找到分区表,并且它可能无法成功检测到第一个分区的分区类型。因此,给它起一个名字,然后尝试恢复分区表。然后备份恢复的文件。

编辑:现在发现它是fat32,我认为我会更容易,因为会有很多脂肪回收工具。您可以使用它们来生成胖表,并且可以使用诸如photorec之类的工具来恢复目录结构和特定文件。 ubuntu抢救混音同时具有photorec和testdisk。

编辑:添加了有关克隆硬盘驱动器磁盘内容的信息。


3
“……如果可能,请备份整个图像……”这似乎是合理的建议。想详细说明如何做到这一点?
Michael Martin-Smucker 2012年

如果只是外部驱动器,则无需运行实时系统。
塔卡特2012年

1
@MichaelMS添加了有关如何备份整个映像的信息。
viyyer 2012年

1

我建议使用一种计算机取证工具,例如SleuthKit,以通读磁盘结构的其余部分,并弄清楚什么看起来像结构,什么看起来像数据,并帮助您恢复。


1

我同意这里的社区成员,testdisk,至高无上和sleuthkit。另外,您还可以尝试extcarve www.giis.co.in/giis/。最重要的是,在尝试使用所有这些工具之前,请确保将所有750GB的USB备份到新的2TB驱动器,然后再开始运行它们。您说,外部驱动器有很多文件。它是任何特定的文件,例如mp3 doc等,或者仅仅是很多东西的集合。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.