[文章作者:张宴 本文版本:v1.0 最后修改:2009.07.06 转载请注明原文链接:http://blog.s135.com/linux_ext3_undelete/]

  环境:CentOS 5.3 x86_64下,/dev/sdb1为数据分区/data0,EXT3文件系统。
  前因:误删了/data0/tcsql/cankao/phpcws-1.5.0/httpcws.cpp文件。由于忘了备份httpcws.cpp文件,重新开发工作量较大,因此只有恢复该文件一条路可走。

  debugfs命令针对EXT2分区还行,但对EXT3分区就帮不上忙了。偶然发现的一款开源软件,解决了我的大忙。该软件下载网址为:
  http://code.google.com/p/ext3grep/

  1、先安装ext3grep软件:
wget http://ext3grep.googlecode.com/files/ext3grep-0.10.1.tar.gz
tar zxvf ext3grep-0.10.1.tar.gz
cd ext3grep-0.10.1
./configure
make
make install


  2、umount /data0分区:
umount /data0

  如果提示busy,先kill正在使用这个目录的进程,再umount:
fuser -k /data0
umount /data0


  3、查询所有Inode,(执行需要几分钟~十多分钟):
ext3grep /dev/sdb1 --ls --inode 2

  点击在新窗口中浏览此图片

  4、逐级查找Inode,看是否能找到httpcws.cpp文件(此步骤也可省略):

  点击在新窗口中浏览此图片

  点击在新窗口中浏览此图片

  5、恢复/data0/tcsql/cankao/phpcws-1.5.0/httpcws.cpp文件:
ext3grep /dev/sdb1 --restore-file tcsql/cankao/phpcws-1.5.0/httpcws.cpp

  点击在新窗口中浏览此图片

  如果提示以下信息,则表示恢复成功:
  Restoring tcsql/cankao/phpcws-1.5.0/httpcws.cpp

  这时,执行ext3grep命令的当前目录下将会自动生成一个名为RESTORED_FILES的文件夹,文件夹下的tcsql/cankao/phpcws-1.5.0/httpcws.cpp即为恢复的文件。查看了一下,和被删除前的内容一样,大功告成。


  6、重新mount /data0分区:
mount /dev/sdb1 /data0


  参考资料:http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html


技术大类 » 其他Unix技术 | 评论(27) | 引用(0) | 阅读(6983)
1314it Email Homepage
2009-7-30 10:52
张宴大哥  关于这个图片用什么软件做的  期待你的回复啊  ..


这是图片的源地址 (baidu相册上面) : http://hiphotos.baidu.com/shengit/pic/item/ed9bc7fa0381b90a4e4aea46.jpeg
Toad
2009-7-31 08:38
不错!刚才DD出一个文件格成EXT3测试了一下,可以成功恢复!不过不知道能不能批量恢复呢?比如我不小心在数据库的根上面RM -RF了。如果像你说的这样恢复效率有点慢哈!不过能恢复就算不错了!
red
2009-8-3 21:28
张哥。一定要帮我解决呀。
在恢复文件的时候就报这个错。然后就中止了

ext3grep: init_directories.cc:534: void init_directories(): Assertion `lost_plus_found_directory_iter != all_directories.end()' failed.已放弃

是什么原因呢?要是不能恢复。我就要完了!
rhlei Homepage
2009-8-8 21:34
不知道你试过大文件没有?生产上可以用吗?
cnbird
2009-8-13 10:47
ext3grep: init_directories.cc:534: void init_directories(): Assertion `lost_plus_found_directory_iter != all_directories.end()' failed.已放弃
我也出现这个问题了
xixi
2009-8-16 21:32
博主,我是来向您报告一个无耻网站的,不是广告。
http://www.anqn.com/os/linux/2009-08-14/a09114721.shtml

anqn 是一个十分无耻的网站!!
miladuo
2009-8-17 16:54
好文章,的确测试成功。不过好像“/”目录下的文件不一定行。
分页: 2/2 第一页 上页 1 2 最后页
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]