免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1131 | 回复: 0
打印 上一主题 下一主题

ext3文件恢复 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-20 09:54 |只看该作者 |倒序浏览
因为交付合作商服务器,删除资料,原来备份的资料又有问题,不得不恢复原来的数据。找到张宴老师的一个东西。 确实找回来了。值得记录一下。 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
  
顺便说一句,前面的步骤只是为了查看到底还能不能找到丢失文件的索引节点,可以省略,直接执行后面恢复就成了。如果恢复不了,前面查看也没有什么用。使用前面查看以后,可以根据自己的索引节点号来直接进行恢复,省着再跑一遍
ext3grep /dev/sdb1 --restore-innode 节点号

有更多更详细的方法,还是参照:
http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html

还是想提醒一下,删东西一定要谨慎。这个工具非常好,但是恢复也在五五之数。我做测试的数据就没有找到!!

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/29960/showart_2154307.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP