> Linux教程 > 系统运维 >

extundelete恢复Linux被删除文件

今天群中有个朋友的客户闲着没事rm掉了数据文件,然后讨论到使用extundelete进行了恢复,抢救了部分未被覆盖的数据文件。该软件官方地址:http://extundelete.sourceforge.net/
安装extundelete


 
  1. [root@xifenfei tmp]# bunzip2 extundelete-0.2.0.tar.bz2  
  2. [root@xifenfei tmp]# tar xvf extundelete-0.2.0.tar  
  3. extundelete-0.2.0/  
  4. extundelete-0.2.0/README  
  5. extundelete-0.2.0/acinclude.m4  
  6. extundelete-0.2.0/configure.ac  
  7. extundelete-0.2.0/aclocal.m4  
  8. extundelete-0.2.0/Makefile.am  
  9. extundelete-0.2.0/Makefile.in  
  10. extundelete-0.2.0/config.h.in  
  11. extundelete-0.2.0/configure  
  12. extundelete-0.2.0/compile  
  13. extundelete-0.2.0/depcomp  
  14. extundelete-0.2.0/install-sh  
  15. extundelete-0.2.0/missing  
  16. extundelete-0.2.0/LICENSE  
  17. extundelete-0.2.0/autogen.sh  
  18. extundelete-0.2.0/src/  
  19. extundelete-0.2.0/src/Makefile.am  
  20. extundelete-0.2.0/src/Makefile.in  
  21. extundelete-0.2.0/src/extundelete.cc  
  22. extundelete-0.2.0/src/block.c  
  23. extundelete-0.2.0/src/insertionops.cc  
  24. extundelete-0.2.0/src/block.h  
  25. extundelete-0.2.0/src/extundelete.h  
  26. extundelete-0.2.0/src/extundelete-priv.h  
  27. extundelete-0.2.0/src/jfs_compat.h  
  28. extundelete-0.2.0/src/kernel-jbd.h  
  29. [root@xifenfei tmp]# cd extundelete-0.2.0  
  30. [root@xifenfei extundelete-0.2.0]#  ./configure  
  31. Configuring extundelete 0.2.0  
  32. Writing generated files to disk  
  33. [root@xifenfei extundelete-0.2.0]# make && make install  
  34. make -s all-recursive  
  35. Making all in src  
  36. Making install in src  
  37.   /usr/bin/install -c 'extundelete' '/usr/local/bin/extundelete'  

恢复操作命令

 
  1. --umount或者read only 分区  
  2.  umount /dev/partition  
  3.  mount -o remount,ro /dev/partition  
  4.    
  5. --恢复文件  
  6. xtundelete /dev/partition --restore-all  
  7. extundelete /dev/partition --restore-directory /backup/gnutool-delete  
  8. extundelete /dev/partition --restore-files /etc/passwd  

测试恢复
[plain] view plaincopy
 
  1. --基于目录恢复  
  2. [root@xifenfei tmp]#extundelete /dev/sdb1  --restore-directory /u01/xifenfei  
  3. Loading filesystem metadata ... 160 groups loaded.  
  4. Loading journal descriptors ... 23 descriptors loaded.  
  5. Writing output to directory RECOVERED_FILES/  
  6. Failed to restore file /u01/xifenfei  
  7. Could not find correct inode number past inode 2.  
  8. [root@xifenfei tmp]# cd RECOVERED_FILES/  
  9. [root@xifenfei RECOVERED_FILES]# ll  
  10. total 0  
  11. --未成功  
  12.    
  13. --基于磁盘恢复  
  14. [root@xifenfei RECOVERED_FILES]#extundelete /dev/sdb1  --restore-all  
  15. Loading filesystem metadata ... 160 groups loaded.  
  16. Loading journal descriptors ... 23 descriptors loaded.  
  17. Writing output to directory RECOVERED_FILES/  
  18. Searching for recoverable inodes in directory / ...  
  19. 4 recoverable inodes found.  
  20. Looking through the directory structure for deleted files ...  
  21. Failed to restore inode 1966081 to file RECOVERED_FILES/xifenfei:Inode does not correspond to a regular file.  
  22. Restored inode 1966082 to file RECOVERED_FILES/xifenfei/xff.txt  
  23. Failed to restore inode 1966083 to file RECOVERED_FILES/xifenfei/xff:Inode does not correspond to a regular file.  
  24. Restored inode 1966084 to file RECOVERED_FILES/xifenfei/xff/xff.txt132  
  25. 0 recoverable inodes still lost.  
  26. [root@xifenfei RECOVERED_FILES]# ll  
  27. total 4  
  28. drwxr-xr-x 3 root root 4096 Aug 31 21:36 RECOVERED_FILES  
  29. [root@xifenfei RECOVERED_FILES]# cd RECOVERED_FILES/  
  30. [root@xifenfei RECOVERED_FILES]# ll  
  31. total 4  
  32. drwxr-xr-x 3 root root 4096 Aug 31 21:36 xifenfei  
  33. [root@xifenfei RECOVERED_FILES]# cd xifenfei/  
  34. [root@xifenfei xifenfei]# ll  
  35. total 20  
  36. drwxr-xr-x 2 root root  4096 Aug 31 21:36 xff  
  37. -rw-r--r-- 1 root root 13231 Aug 31 21:36 xff.txt  
  38. [root@xifenfei xifenfei]# cd xff  
  39. [root@xifenfei xff]# ll  
  40. total 16  
  41. -rw-r--r-- 1 root root 13231 Aug 31 21:36 xff.txt132  
  42. --恢复成功  
  43.    
  44. --基于文件恢复  
  45. [root@xifenfei xff]# extundelete /dev/sdb1  --restore-files /u01/xifenfei/xff.txt  
  46. Loading filesystem metadata ... 160 groups loaded.  
  47. Loading journal descriptors ... 23 descriptors loaded.  
  48. Writing output to directory RECOVERED_FILES/  
  49. [root@xifenfei xff]# cd RECOVERED_FILES/  
  50. [root@xifenfei RECOVERED_FILES]# ll  
  51. total 0  
  52. --未成功  

通过上述实验证明extundelete还是有很大的不完整性,基于整个磁盘的恢复功能较为强大,基于目录和文件的恢复还不够强大.不过该软件在很多时候还是有救火的功能,特别是当蛋筒的人员删除了数据库的部分文件之时.


 



(责任编辑:IT)