免费注册 查看新帖 |

Chinaunix

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

linux下恢复误删除的文件方法(ext2及ext3) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-19 15:23 |只看该作者 |倒序浏览
如果是ext2文件系统的,直接用debugfs是可以恢复出来的,但对于ext3,debugfs就无能为力了,好在我们有了ext3grep这个开源工具(
http://code.google.com/p/ext3grep/
)!


对于ext2
1、在/data(/dev/sdb)上创建并删除测试文件(作测试目的以plantodelete为例)
  #vi plantodelete
  输入This text is plantodelete! 保存退出
  #rm -f plantodelete
   
2、以只读方式remount /data,防止再次写入文件
  #mount -r -n -o remount /data
  如果出现busy用
  #fuser -k /data

3、恢复误删除的文件
  #debugfs /dev/sdb
  debugfs 1.35 (28-Feb-2004)
  debugfs: lsdel                  
  Inode  Owner  Mode    Size    Blocks   Time deleted
    12      0 100600   4096    1/   1 Sat Dec 19 15:54:04 2009
    13      0 100644     14    1/   1 Sat Dec 19 15:54:08 2009
2 deleted inodes found.
debugfs: stat                   plantodelete   
debugfs: q                        

在运行debugfs命令的当前目录下就可以看见恢复的文件了




对于ext3
1、下载并安装ext3grep
   #wget -c
http://ext3grep.googlecode.com/files/ext3grep-0.10.1.tar.gz
   #tar zxf ext3grep-0.10.1.tar.gz
   #cd ext3grep-0.10.1
   #./configure
   #make
   #make install

2、将要恢复数据的分区umount(以 /dev/sdb  /data为例 )
   #umount /data
   如果因为busy无法正常umount,使用
   #fuser -k /data
   杀掉进程再umount

3、查找并恢复误删除的文件
   #ext3grep /dev/sdb  --ls --inode 2
   找到想要恢复的文件的inode 如 13
   #ext3grep /dev/sdb  --restore-file --inode 13
   恢复成功后在运行ext3grep的当前目录下就会有RESTORE_FILES目录下就是恢复出来的文件

   





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

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP