快速业务通道

linux下实例恢复被删除文件

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-04

今天突然想到要测试下文件恢复,网上看到很多人用一款ext3grep的软件,下下来使用后发现 效果不佳,只能恢复小文件,不能恢复目录.后来又找到一款名叫extundelete的软件,使用后发现不错,官网据说还能恢复ext4文件系统下的文件

以下是实验记录:

[root@localhost tmp]# cd /boot
[root@localhost boot]# mount -o remount,rw /boot
[root@localhost boot]# ll
总计 10795
-rw-r--r-- 1 root root 12288 2009-01-22 config-2.6.18-128.el5
drwxr-xr-x 2 root root 1024 05-13 01:49 grub
drwxr-xr-x 2 root root 1024 05-12 01:57 grub_bak
-rw------- 1 root root 3383766 02-24 17:09 initrd-2.6.18-128.el5.img
drwx------ 2 root root 12288 02-24 16:52 lost found
-rw-r--r-- 1 root root 80032 2009-03-17 message
drwxr-xr-x 2 root root 1024 05-12 01:53 mynewkernel
-rw-r--r-- 1 root root 102182 05-13 02:11 symvers-2.6.18-128.el5.gz_bak
-rw-r--r-- 1 root root 1784432 05-11 23:45 System.map
-rw-r--r-- 1 root root 1188481 2009-01-22 System.map-2.6.18-128.el5
-rw-r--r-- 1 root root 1889308 2009-01-22 vmlinuz-2.6.18-128.el5
-rw-r--r-- 1 root root 2538768 05-12 01:50 vmlinuz-2.6.38.6
[root@localhost boot]# rm -rf config-2.6.18-128.el5
[root@localhost boot]# sync
确定删除了config-2.6.18-128.el5 文件
[root@localhost boot]# mount -o remount,ro /boot
为了安全,把要恢复的分区挂载为只读
extundelete的下载与安装就不写说来了

现在开始恢复
cd /tmp

[root@localhost tmp]# /usr/local/extundelete/bin/extundelete /dev/sda1 --ls --inode 2
#先用命令检索下分区下文件
File name | Inode number | Deleted status
Directory block 512:
. 2
.. 2
lost found 11
grub 10041
System.map 18
message 12
initrd-2.6.18-128.el5.img 17
System.map-2.6.18-128.el5 13
config-2.6.18-128.el5 14 Deleted
symvers-2.6.18-128.el5.gz 15 Deleted
vmlinuz-2.6.18-128.el5 16
grub_bak 8033
mynewkernel 4017
vmlinuz-2.6.38.6 4018
symvers-2.6.18-128.el5.gz_bak 19


[root@localhost tmp]# /usr/local/extundelete/bin/extundelete /dev/sda1 --restore-file config-2.6.18-128.el5
WARNING: Extended attributes are not restored.
Loading filesystem metadata ... 13 groups loaded.
Loading journal descriptors ... 410 descriptors loaded.
Writing output to directory RECOVERED_FILES/
Restored inode 14 to file RECOVERED_FILES/config-2.6.18-128.el5

去文件夹下的RECOVERED目录下看看
[root@localhost tmp]# ll RECOVERED_FILES/
总计 12
-rw-r--r-- 1 root root 12288 05-13 02:25 config-2.6.18-128.el5


文件恢复成功 !

补充:

extundelete是唯一一款能恢复lvm(逻辑卷管理)的 软件,恢复步骤是一样的,恢复文件夹的话用选项--restore-all 在linux centos5.3 lvm上恢复50M的文件夹成功.

另外要注意的是,文件恢复后但文件的权限可能不同了,软连接可能也不同,我试验了恢复了软连接的时候恢复到了源文件.

本文出自 “你就当我是浮夸吧” 博客,请务必保留此出处http://2804976.blog.51cto.com/2794976/565095

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号