今天突然想到要测试下文件恢复,网上看到很多人用一款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
|