linux恢復刪除文件

 linux恢復刪除文件

 
在使用linux的過程中,難免會誤刪除一些文件,可是怎樣找回呢?
下面介紹一下ext3文件系統的數據恢復:
 
系統環境:Red Hat Enterprise Linux Server release 5
 
需要軟件:
e2fsprogs
ext3grep
 
測試:
e2fsprogs這個軟件系統自帶,檢查一下
如果沒有在光盤中找,或到網上找
[url]http://rpmfind.net/linux/RPM[/url]
[url]http://rpm.pbone.net[/url]
這兩個網站不錯,幾乎所有的包都能找到
#yum install -y e2fsprogs
#yum install -y e2fsprogs-devel
 
下載安裝ext3grep
#wget [url]http://ext3grep.googlecode.com/files/ext3grep-0.7.0.tar.gz[/url]
#tar zxf ext3grep-0.7.0.tar.gz
#cd ext3grep-0.7.0
#./configure
#make && make install
#ext3grep
沒錯誤的話就安裝成功了
 
下面我們模擬一個環境(用真實的也可以)
1.創建大文件分區並掛載
#mkdir /termite
#cd /termite
#dd if=/dev/zero of=cc-disk bs=1M conut=500
#mkfs -t ext3 cc-disk
#mount -o loop /termite/cc-disk /home
這樣我們的環境就建好了,查看一下
 
2.現在往/home下寫入些文件
#cd /home
#echo test1 > 1
#cp /etc/resolv.conf .
#mkdir -p cc/cc1/cc2
查看一下
 
然後刪除這些文件和目錄
 
現在開始恢復操作
首先umount掉分區
#umount /home
 
然後運行ext3grep
#ext3grep /termite/cc-disk --ls --inode 2
等待一會出現如圖
 
看到剛纔刪除掉的文件了吧
現在恢復文件,見圖
 
會自動在你執行ext3grep命令的當前位置下建立RESTORED_FILES目錄,恢復的文件就在這裏面
 
從圖中可看到目錄cc恢復的不正確,cc下面應該還有cc1的,可知--restore-file適用與恢復文件,可以用--restore-all嘗試恢復所有文件:
 
#ext3grep /termite/cc-disk --restore-all
但是也不一定能完全恢復。我試過有時可以把目錄恢復(包括子目錄),但是其中的文件卻找不到。
 
如果想詳細的瞭解ext3grep,可以到它的的HOW TO頁去看看:
[url]http://www.xs4all.nl/~carlo17/howto/undelete_ext3.html[/url]
本文出自 “白蟻藍絲” 博客,請務必保留此出處http://termite.blog.51cto.com/206292/87068
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章