比尔盖子 博客

100%恢复——Linux系统下使用 TestDisk & PhotoRec 数据恢复

今天,有一个朋友向我抱怨,她将相机SD卡中的文件复制到电脑时,突然发现SD卡中的照片全都不见了,只剩下区区几张照片。便问我能否进行数据恢复。经过询问,得知她在发现文件丢失后,没有继续修改SD卡中的文件。看来她这点常识还是有的。

比尔盖子链接:如果数据丢失后,继续修改文件,那么后来修改的文件就可能覆盖先前的文件,导致无法进行数据恢复。因此当发生数据丢失时,如果文件存在电脑中,应立即关机,停止一切操作;如果存在可移动设备中,应使用“安全删除硬件”,然后将它拔出电脑。

于是,她将SD卡交给了我。回到家,我打开电脑,准备进行数据恢复工程。由于比尔盖子以Fedora为主要的操作系统,因此开始寻找Linux下的数据恢复软件,发现果然有一款专门恢复照片的免费软件,便把它下载下来,正式开始恢复。

TestDisk & PhotoRecCGSecurity 出品的自由数据恢复工具,可以运行在 Unix(Solaris/BSD/Linux) 和 DOS/Windows  平台上,支持 FAT/ext2/ext3/ext4/exFAT/NTFS/HFS+ 文件系统。TestDisk 恢复分区损坏造成的数据丢失;PhotoRec 恢复文件系统级别损坏造成的数据丢失(注意,PhotoRec 不仅仅可以恢复照片)。实在是不可多得的好工具。

正式恢复

保护数据

最好将SD卡写保护。

为了避免SD卡中的数据在恢复过程中丢失,因此最好将SD卡写保护。如何做到呢?太简单了,将SD卡上的小开关按照LOCK的箭头方向移动就行了。

了解情况

 

 

之后,比尔盖子将这张SD卡放入读卡器,得知这张SD卡是FAT32文件系统,并且如图所示,大多数照片全部丢失,只剩下几张。

开始恢复

首先,将下载的testdisk-6.12解压到主文件夹。然后,打开一个终端窗口,输入命令

su

然后提供root的密码(数据恢复需要root权限)

接着,使用cd切换到testdisk-6.12文件夹。这个文件夹中有两个程序,一个是photorec_static;另一个是scandisk_static。由于我们这次恢复的数据是照片,因此输入:

./photorec_static

来运行数据恢复程序。

接下来的操作中,使用回车来确定,使用q来返回上一步。
首先需要选择丢失数据的分区,如图1.1,选择完后确认。然后需要选择这个设备的分区表类型,如果这是一块移动硬盘,一般选择Intel。如果这是一个移动设备,只有一个分区,选择None,如图1.2。

图1.1 选择要恢复数据的设备

图1.2 选择分区表类型

 

如图1.3,在选择完分区表类型后确认,然后选择数据所在的分区。如果这是一块移动硬盘,那么选择你需要恢复数据的分区;如果这是一个移动设备,那么不要选择Unknown,选择第二个分区。

选择完分区后,程序会询问你分区的文件系统。如图1.4。如果你的文件系统是Linux下常用的ext系列,比如ext2、ext3、ext4,那么选择第一项;如果不是ext系列的文件系统,一律选择第二项,选择完后确定。

图1.3 选择分区类型

图1.4 选择文件系统类型

之后,将选择文件的扫描方式,正如图1.5。第一项“FREE”只会扫描文件的剩余空间,速度比较快,但是不一定能扫描到所有丢失的数据;第二项WHOLE会扫描整个文件系统,速度比较慢,如果是一块移动硬盘,将会花费很长时间。因此,比尔盖子建议:先试一试FREE,如果丢失的文件没有恢复成功,再使用WHOLE。由于比尔盖子之前使用FREE没有成功恢复任何数据,因此在这里选择了WHOLE。

接下来,选择恢复出来的文件,保存的位置,正如图1.6所示。使用回车来进入一个文件夹,上下左右来移动,按键盘上的C来确定,有一个名字是”.”(不包括引号)的文件夹,可以返回上一层。
比尔盖子建好了一个recvering的文件夹,于是使用回车来进入这个文件夹,然后按C确定。

图1.5 选择丢失数据的扫描方式

图1.6 选择恢复之后文件的保存路径

激动人心的时刻终于到了!数据恢复开始了,程序会自动估算需要的大致时间,还能显示出恢复了多少文件,如图1.8。
另外,数据恢复过程完毕之后,程序也会有相关提示,比尔盖子没有截图,到那时候反复使用Q来退出,然后去你选择的文件夹里看看,你删除的文件是不是都在哪里?

我成功从朋友的SD卡中恢复了390多张无缘无故消失了的照片,数据恢复取得全面成功,如图1.9!

 

图1.8 数据恢复正在进行

图1.9 恢复出来的照片

收尾

如果一切都成功了,那么,别忘了将SD卡上的开关解除,这样日后在能往里面存文件。
如果你没有恢复成功,而且你丢失的是重要文件,那么只能去找数据恢复公司了!

 

Categories: IT生活

比尔盖子虚拟主机的可用率未能达到99.9% » « Kernel.org恢复运行

2 Comments

  1. 太感谢了博主!!!还好这个软件还有Mac OS X版的。今天晚上弄了很久,试了好几种软件,不是要给钱就是速度忒慢。谢谢谢谢谢谢!!!

发表评论

Your email address will not be published.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax

Copyright © 2023 比尔盖子 博客

Theme by Anders NorenUp ↑