如何恢复已删除的文件?

Dec*_*ira 146 data-recovery

是否有任何工具、方法、咒语可以在 Ubuntu 上恢复最近删除的文件?

如果有什么不同,我想恢复一个Keepass 2.x 数据库文件。但是最好有一种适用于任何类型文件的方法/工具。

小智 79

测试盘/ PhotoRec

TestDisk 有时可以使用 PhotoRec 恢复最近删除的文件,它是 TestDisk 的一部分。可在其网站上的官方回购和更新版本中获得

TestDisk是一款功能强大的免费数据恢复软件!它主要用于帮助恢复丢失的分区和/或在这些症状由错误软件引起时重新启动非引导磁盘:某些类型的病毒或人为错误(例如意外删除分区表)。使用 TestDisk 恢复分区表非常简单。

PhotoRec是 TestDisk 的一部分,是一款文件数据恢复软件,旨在恢复丢失的文件,包括硬盘、CD-ROM 中的视频、文档和档案,以及数码相机内存中丢失的图片(因此称为 Photo Recovery 名称)。PhotoRec 会忽略文件系统并跟踪底层数据,因此即使您的媒体文件系统已严重损坏或重新格式化,它仍然可以工作。

  • 对某人来说知道特定于相机的卡可能很重要,在 TestDisk 上存在 [PhotoRec](http://www.cgsecurity.org/wiki/PhotoRec) (5认同)
  • PhotoRec (http://www.cgsecurity.org/wiki/PhotoRec) 非常适合我恢复意外删除的文件(在带有 ext4 的 Ubuntu 14.04 上)。我首先尝试使用 TestDisk,但无法恢复它们。无论如何,我发现这两个工具都是在同一个文件夹中制作的。 (5认同)
  • 目前,TestDisk 没有图形用户界面,而且帮助(手册)页对我来说信息不足。 (2认同)
  • @silviubogan 实际上 TestDisk 有一个非常好的文本用户界面,一路上都有菜单和解释。所有操作都有一个关联的键来执行它们,并且它们清楚地写在每个屏幕上以便于访问。 (2认同)

Jav*_*era 26

最重要的是在 NTFS(Windows)、FAT32(诺基亚手机的闪存卡)和 ext3 下恢复损坏的硬盘,效果很好。仅命令行,但很简单,如下所示:

sudo foremost -i /dev/sda -o <dir where recovered files will be stored>
Run Code Online (Sandbox Code Playgroud)

它将按文件类型对文件夹中恢复的文件进行排序。Openoffice 文档被恢复为 zip 文件。由于您需要以 root 身份执行它(为了直接访问硬件),输出文件也归 root 所有,因此您之后可能需要更改它们的所有权。


Rus*_*uss 26

如果您的文件系统是 ext3 或 ext4,extundelete真的很棒。

注意:extundelete 要求您卸载驱动器才能正常工作(无论如何,这是一个尽快执行的好主意,以避免可能覆盖已删除文件中希望可恢复的字节)。

在实时系统上卸载驱动器可能很棘手……您经常会收到“ device is busy”消息。要“正确”清除此问题,需要关闭所有访问文件系统的进程。但是...您可能正在您的主目录中工作,并且有无数个进程连接到您的主目录中,所以祝您好运。

解决这个问题的诀窍是做一个“懒惰”的卸载:

$ mount
/dev/sda7 on /home type ext4 (rw)
$ sudo umount -l /home
Run Code Online (Sandbox Code Playgroud)

在哪里:

  • 这个例子是让我准备我的/home坐骑以与 extundelete 一起使用。您显然需要替换/home为您感兴趣的坐骑
  • mount首先执行命令以找出/dev/sda7需要传递给 extundelete 的设备 ( )(为简洁起见,输出被截断)
  • 那是-l选项中的小写 L

  • 懒惰卸载并没有真正的帮助,因为 fs 一直保持挂载状态,直到其上的所有文件都关闭。您只需要在删除文件后立即关闭系统,然后从 livecd 运行 extundelete。 (4认同)

小智 20

如果您不小心删除了某个文件,但仍然知道该文件中写入的一些字符串,您可以使用:

grep -a -B 25 -A 100 'containing string' /dev/sda1 > result.txt
Run Code Online (Sandbox Code Playgroud)

  • 我尝试了其他几个先前的答案。他们都没有工作。这个简单的技巧就做到了!谢谢! (4认同)
  • 应该注意的是,“25”和“100”只是一些可能需要针对特定​​情况进行调整的神奇数字。 (3认同)
  • 开箱即用,无需安装任何其他东西。但请注意 - '/dev/sda1' 当然需要是正确的硬盘(例如使用 'df -h' 检查)此外,您最好将 result.txt 保存到另一个硬盘驱动器上,而不是覆盖当前正在恢复的数据。简而言之:只是丢失了指向数据的指针,数据仍然在硬盘上,直到被覆盖。这个 grep 命令基本上从硬盘 /dev/sda1 读取,将二进制输入视为字符串 (-a),在 (-B) 匹配字符串之前开始 25 行,并在 (-A) 之后保留 100 行 (3认同)

Aat*_*Sai 13

要恢复您可以使用的目录 extundelete

  1. 安装扩展删除

    sudo apt-get install extundelete
    
    Run Code Online (Sandbox Code Playgroud)
  2. 恢复命令

    sudo extundelete --restore-directory /home/Documents/ /dev/sda1
    
    Run Code Online (Sandbox Code Playgroud)

注意:代替dev/sda1放置您的硬盘分区名称。

/home/Documents/ 是您删除目录的路径。


bla*_*899 12

R-Linux(恢复工作室)是最好的之一。我以前多次使用过这个工具。我在一家他们使用商业版本的公司工作,它可以 9/10 次恢复你想要的一切。真正出色的应用程序。我之前曾多次救过我和我的朋友。

R-Linux 是一个免费的文件恢复实用程序,适用于 Linux 操作系统和几个 Unix 中使用的 Ext2/Ext3/Ext4 FS 文件系统。R-Linux 采用与 R-Studio 相同的 InteligentScan 技术,灵活的参数设置,为 Linux 平台提供最快最可靠的文件恢复。但是,与 R-Studio 不同的是,R-Linux 无法通过网络恢复数据或重建 RAID,或提供对象副本。

特点(来自他们的网站):

R-Linux 恢复文件

  • 因病毒攻击、断电或系统崩溃而删除;
  • 包含文件的分区被重新格式化、损坏或删除后;
  • 当磁盘上的分区结构被更改或损坏时。在这种情况下,R-Linux 可以扫描磁盘以尝试查找以前存在的分区并从找到的分区恢复文件。
  • 从带有坏扇区的磁盘。在这种情况下,R-Linux 可以先将整个磁盘或它的一部分复制到一个映像文件中,然后再处理该映像文件。当磁盘上不断出现新的坏扇区,并且必须立即保存剩余信息时,这尤其有用。

R-Linux高级功能

  • 标准的“Windows 资源管理器” - 风格的界面。

  • 主机操作系统:

    • Linux 变体:Linux,内核 2.6 及以上
    • Windows 变体:Win2000、XP、2003、Vista、Windows 7、Windows 8
  • 支持的文件系统:仅限 Ext2/Ext3/Ext4 FS (Linux)。

  • 识别和解析Dynamic (Windows 2000/XP/Vista/Win7)、Basic、GPT 和 BSD (UNIX)分区布局架构和Apple 分区图。支持 GPT 上的动态分区以及 MBR 上的动态分区。

  • 为整个硬盘驱动器、逻辑磁盘或其部分创建映像文件。此类图像文件可以像普通磁盘一样进行处理。映像可以是与旧版 R-Linux 兼容的简单精确对象副本(普通映像),也可以是可以压缩、拆分为多个部分并受密码保护的压缩映像。此类镜像与 R-Drive Image 创建的镜像完全兼容,但与旧版本的 R-Linux 不兼容。

  • 识别本地化名称。

  • 恢复的文件可以保存在主机操作系统可访问的任何(包括网络)磁盘上。


Roj*_*jan 6

尝试手术刀

sudo apt-get install scalpel
Run Code Online (Sandbox Code Playgroud)

欲了解更多信息

人手术刀

  • 我发现 http://www.howtoforge.com/recover-deleted-files-with-scalpel 总比没有好。祝你好运,这不是没有 MS-DOS。 (2认同)

小智 6

如果使用二级内部 HD(怀疑外部 HD 也是如此)用于恢复文件导入(从主 HD,文件最初所在的位置),则需要创建一个目录,将文件放入二级 HD 中。为此,您需要先进行 BIOS 设置以从 CD 启动!1.启动Live Ubuntu Rescue-Remix CD,给出启动命令,然后当它启动到终端时,通过命令检查你的硬盘——代码:sudo fdisk -l

了解什么是主要的,什么是次要的,以及检查文件和恢复文件的分区 - linux ext3 或 Windows NTFS!我的是Linux。有足够的空间就可以了!(然后你可以尝试运行 Photorec(“sudo photorec”),希望你能够看到你所有的 HD。我没有那么幸运,所以我不得不创建目录并安装秒。HD。)

  1. 首先为恢复的文件创建目录,例如 – media/disk。发出命令 - 代码:sudo mkdir /media/disk

如果没问题,终端提示只会返回。

  1. 必须安装二级 HD,否则它将不可见,即使“sudo fdisk -l”确实显示它。为您的辅助 HD 发出命令 – 代码:sudo mount -t ext3 /dev/sdb2 /media/disk

如果没问题,终端提示只会返回。

  1. 通过命令运行 Photorec – 代码:

    sudo photorec

通过设置,只选择你想要的文件类型,否则你将有数千个文件要筛选!

有关更多详细信息,您可以访问:http://www..ubuntumanual.org/posts/357/recover-your-deleted-files-in-ubuntu