实例:Linux EXT3文件系统下成功恢复误删的文件
浏览:2804次 出处信息
环境: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
建议继续学习:
- 利用binlog来恢复数据库 (阅读:4187)
- 这样恢复 Linux 分区下误删的文件 (阅读:4196)
- Oracle数据恢复专题 (阅读:4052)
- 恢复删除的数据表,数据库 (阅读:3955)
- Oracle数据恢复 - Linux / Unix 误删除的文件恢复 (阅读:3583)
- Mysql .frm损坏后如何恢复 (阅读:3574)
- MySQL数据库InnoDB数据恢复工具使用总结 (阅读:3354)
- linux上ext2文件系统中,用debugfs来恢复被删除的文件 (阅读:2964)
- Oracle数据恢复:格式化,Raid损坏,文件覆盖恢复 (阅读:2620)
- Oracle9i中如何恢复误删除数据? (阅读:2583)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:我常用的主机监控shell脚本 >>
文章信息
- 作者:张宴 来源: 回忆未来
- 标签: ext3 ext3grep 数据恢复
- 发布时间:2009-11-05 23:13:56
建议继续学习
近3天十大热文
-
[83] memory prefetch浅析
-
[53] 转载:cassandra读写性能原理分析
-
[51] 基本排序算法的PHP实现
-
[50] 深入浅出cassandra 4 数据一致性问
-
[46] 字符引用和空白字符
-
[42] MySQL半同步存在的问题
-
[40] 获取Dom元素的X/Y坐标
-
[39] Inline Form Labels
-
[39] javascript插入样式
-
[38] JS中如何判断字符串类型的数字