iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >用ext3grep恢复删除的文件
  • 144
分享到

用ext3grep恢复删除的文件

文件ext3grep 2023-01-31 01:01:52 144人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

 一个同事不小心使用rm -rf命令误删了自己的代码,这意味着一个月的工作丢失了(一个月没有备份过代码,看来他以前一定没经历计算机崩溃的灾难)。我们知道rm命令无法撤销,那么有没有办法恢复这个被删除的目录以及其中的全部文件呢? 在网上搜索了

 一个同事不小心使用rm -rf命令误删了自己的代码,这意味着一个月的工作丢失了(一个月没有备份过代码,看来他以前一定没经历计算机崩溃的灾难)。我们知道rm命令无法撤销,那么有没有办法恢复这个被删除的目录以及其中的全部文件呢?

在网上搜索了一下,找到一个名为ext3grep的工具。在这个工具出现以前,恢复ext3文件系统中被删除的数据是不可能的。因为ext3文件系统不同于ext2文件系统,它在删除一个文件后,会把文件inode结点中扇区指针清为0,而这让文件恢复看起来不太可能。不过,正如ext3grep工具作者所说的,因为ext3是一个日志型的文件系统,通过分析日志信息,有很大的可能重新解析出块指针,从而恢复出目录和文件。

以下是恢复文件所采用的步骤,希望对大家有帮助。

[ 卸载被误删除文件所在的分区,或以只读方式mount ]

当你发现你误删除了文件后,要做的第一件事是马上卸载被误删除文件所在的分区,或者以只读的方式来挂载该分区。原因大家都很清楚,文件被删除后,文件中的数据还存在磁盘上,除非存放这些数据的数据块又被操作系统分配出去了。我们这一步就是尽量降低数据块中数据被覆盖的风险,以提高恢复数据成功的比率。

如果被误删的文件在根分区,那么你最好重启计算机,进入单用户模式,以只读的方式挂载根分区,然后再进行恢复。要进行单用户模式。

进入单用户模式后,根分区还是以读写方式mount的,用下面的命令,把挂载方式由读写(rw)改为只读(ro):

mount -o ro,remount /

如果被删除的文件不是根分区,也可以用unmount的方式将该分区卸载。假设文件在分区/dev/sda3中,该分区挂载到/home,那么我们用下面的命令来卸载:

    umount /dev/sda3

或者命令:

    umount /home

当然,在卸载前要保证没有程序在访问该分区,否则卸载会失败。所以,Easwy一般推荐进入单用户模式来恢复文件。

[ 安装ext3grep工具 ]

恢复的第一步当然是安装ext3grep工具。对于Debian/ubuntu用户来说,安装ext3grep工具非常简单,只需要执行下面的命令:

aptitude install ext3grep

不过很多公司使用的linux版本是Centos,所以需要自己手工编译ext3grep工具,其实这也很简单,首先到ext3grep主页上下载它的源代码,然后用下面的命令解压/编译/安装这个工具。

 

tar zxf ext3grep-0.10.1.tar.gz

cd /home/easwy/ext3grep-0.10.1

./configure

make

make install

注:在网上搜了一下,ext3grep也有rpm包可以下载,比如,RHEL/CentOS的RPM包可以在这里下载。其它Linux发行版的RPM也可以在rpmfind.net上找到。

前面说过,发现误删除后,要卸载掉该分区,或者进入单用户模式。所以最好在另外一台计算机上来编译或安装这个工具,然后把ext3grep这个可执行文件拷贝到U盘中再进行恢复。因为同事的文件恰好在根分区中。如果你也是这种情况,那么在用RPM包安装时,则需要把RPM包安装到你指定的目录中,然后再把它拷贝到U盘中。

U盘里只需要拷贝ext3grep一个文件即可,它不需要动态加载库就可以执行。接下来把U盘插到待恢复的电脑上,用下面的命令加载:

mount -t vfat /dev/sdb1 /mnt

把上面的设备号和安装点换成你自己的。如果你的设备文件还不存在的话,用mknod命令创建一下吧。

现在,我们可以开始文件恢复了。

[ 恢复文件 ]

在开始恢复前,选择一个目录来存放被恢复的文件。ext3grep程序会在当前目录下创建一个名为RESTORED_FILES的目录来存放被恢复的文件。因此在运行ext3grep命令前,先要切换到一个你可读写的目录中。

因为进入了单用户模式,并且将根分区设成了只读,那么只能把恢复出来的文件放在U盘中了。因此,先cd /mnt进入U盘目录。

如果你有幸记得你误删除的文件名及其路径的话,就可以直接用下面的命令进行恢复了:

    ext3grep /dev/your-device --restore-file path/to/your/file/filename

需要注意的是,上面的文件路径,是在该分区上文件路径。假设我们要恢复/dev/sda3分区上文件,这个分区原来的安装点是/home,现在想恢复文件/home/xxx/vi/tips.xml,那么输入的命令应该是:

    ext3grep /dev/sda3 --restore-file xxx/vi/tips.xml

如果你忘记了文件名,或者你误删除的是一个目录而你无法记全该目录中的文件,你可以先用下面的命令查询一下文件名:

ext3grep /dev/sda3 --dump-names | tee filename.txt

上面的命令把ext3grep命令的输出记录到文件filename.txt中,你可以慢慢查看,或者使用grep命令过滤出你需要的信息。

当你知道了目录/文件的信息后,就可以用上面说的命令进行恢复了。

在ext3grep命令中有一个–depth参数,应该是用来恢复目录以及其中的所有子目录和文件的。

--结束END--

本文标题: 用ext3grep恢复删除的文件

本文链接: https://www.lsjlt.com/news/183192.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 用ext3grep恢复删除的文件
     一个同事不小心使用rm -rf命令误删了自己的代码,这意味着一个月的工作丢失了(一个月没有备份过代码,看来他以前一定没经历计算机崩溃的灾难)。我们知道rm命令无法撤销,那么有没有办法恢复这个被删除的目录以及其中的全部文件呢? 在网上搜索了...
    99+
    2023-01-31
    文件 ext3grep
  • ext3grep文件恢复
    1、下载安装ext3grep源码包tar zxvf ext3grep-0.10.1.tar.gz cd ext3grep-0.10.1 ./configure make make install ext3grep -v2、挂在分区到目录mo...
    99+
    2023-01-31
    文件 ext3grep
  • Linux下如何利用ext3grep恢复被删除的文件
    这篇文章将为大家详细讲解有关Linux下如何利用ext3grep恢复被删除的文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。10个G的数据被误删除了,差点崩溃,试遍了所有常规恢复软件,无用,就要放弃的时...
    99+
    2023-06-16
  • Linux文件恢复利器 ext3grep
     Linux文件恢复利器 ext3grep与extundelete   介绍两款Linux文件恢复工具,ext3grep与extundelete,可能在关键时刻会有所帮助。ext3grep仅对ext3文件系统有效,extundelete对e...
    99+
    2023-01-31
    利器 文件 Linux
  • 利用ext3grep恢复ext3文件系统
    在使用linux的过程中,难免会误删除一些文件,可是怎样找回呢?下面介绍一下ext3文件系统的数据恢复。实验环境:CENTOS6.3 /dev/sdb1为数据分区/data,EXT3文件系统。我们已恢复data下的任意文件为例。需要软件:e...
    99+
    2023-01-31
    文件系统 ext3grep
  • 使用ext3grep恢复ext3文件系统
    测试环境:rhel5.2 x86平台 需要安装的软件为:ext3grep http://code.google.com/p/ext3grep/ 1:下载 wget http://ext3grep.googlecode.com/files/e...
    99+
    2023-01-31
    文件系统 ext3grep
  • 如何恢复windows7删除的文件 恢复删除文件小技巧是什么
    很多朋友可能都有出现过误删文件的情况,一般来说,误删文件还可以在回收站中找回,但往往也有不少朋友没有留意,经常误删文件后连回收站也清空了,出现这种情况找回误删的文件理论上是可以找回的(文件删除不了怎么办),不少朋友可能都...
    99+
    2023-05-26
    windows7 文件 恢复 技巧
  • ext3grep恢复ext3文件系统下误
    ext3grep恢复ext3文件系统下误删的文件  环境说明:OS:Centos5.2 文件系统为ext3   1.首先模拟一个分区:  mkdir /home/store cd /home/store dd if=/dev/zero o...
    99+
    2023-01-31
    文件系统 ext3grep
  • pycharm删除的文件如何恢复
    pycharm 中可通过两种方式恢复已删除文件:从本地历史记录中恢复:在 "version control" 选项卡中选择 "local history",然后从时间线中选择删除文件的时...
    99+
    2024-04-19
    git pycharm 数据丢失
  • 恢复EXT3下被删除的文件
    下面是这个教程将教你如何在Ext3的文件系统中恢复被rm掉的文件。假设我们有一个文件名叫 ‘test.txt’ $ls -il test.txt 15 -rw-rw-r– 2 root root 20 Apr 17 12...
    99+
    2023-06-05
  • linux如何恢复删除的文件
    要恢复被删除的文件,您可以尝试以下方法:1. 使用恢复工具:有一些专门用于恢复被删除文件的工具,例如TestDisk、PhotoRe...
    99+
    2023-08-20
    linux
  • 如何使用Testdisk恢复删除的文件
    这篇文章主要讲解了“如何使用Testdisk恢复删除的文件”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用Testdisk恢复删除的文件”吧!Testdisk是一个强大的免费的跨平台的...
    99+
    2023-06-27
  • 怎么恢复被删除的LINUX文件
    本篇内容主要讲解“怎么恢复被删除的LINUX文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么恢复被删除的LINUX文件”吧!作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,...
    99+
    2023-06-10
  • linux怎么恢复刚删除的文件
    在Linux中,如果你刚刚删除了一个文件,你可以通过以下方法恢复它:1. 使用文件恢复工具:有一些工具可以帮助你恢复删除的文件,如e...
    99+
    2023-08-30
    linux
  • 怎么恢复已删除的Linux文件
    本篇内容主要讲解“怎么恢复已删除的Linux文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么恢复已删除的Linux文件”吧!作为一个多用户、多任务的操作系统,Linux下的文件一旦被删除,...
    99+
    2023-06-10
  • linux文件被删除如何恢复
    要恢复被删除的Linux文件,可以尝试以下几种方法: 使用文件恢复工具:有一些专门针对Linux系统的文件恢复工具,如TestD...
    99+
    2024-03-04
    linux
  • 电脑delete删除的文件如何恢复
    这篇文章主要介绍了电脑delete删除的文件如何恢复的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇电脑delete删除的文件如何恢复文章都会有所收获,下面我们一起来看看吧。 ...
    99+
    2023-02-25
    电脑
  • git怎么恢复本地删除的文件
    在使用Git时,经常会遇到本地误删文件的情况。虽然Git在本地和远程都有备份,但有时候误删的文件可能并没有提交到远程,那么怎么恢复呢?以下是一些可行的方法:一、使用Git恢复命令如果刚刚进行完的操作是删除文件,可以使用以下命令来恢复:git...
    99+
    2023-10-22
  • Linux中怎么恢复被删除的文件
    Linux中怎么恢复被删除的文件,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。恢复软件是如何工作的?大多数的文件系统(在删除文件时)只是标记空间为空白。在这些文件系统下,恢...
    99+
    2023-06-13
  • windows u盘删除的文件怎么恢复
    这篇文章主要介绍“windows u盘删除的文件怎么恢复”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“windows u盘删除的文件怎么恢复”文章能帮助大家解决问题。u盘删除的文件在哪里:答:u盘删...
    99+
    2023-07-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作