使用extundelete恢復被刪掉的文件

extundelete安裝
1.安裝依賴包
# yum install e2fsprogs* -y

 yum install gcc-c++


2.下載並安裝extundelete
# wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2 
# tar -jxvf extundelete-0.2.4.tar.bz2 
# cd extundelete-0.2.4 
# ./configure --prefix=/usr/local/extundelete 
# make && make install


3.驗證是否安裝成功 
# cd /usr/local/extundelete/bin 
# ./extundelete -v 
---------------------
extundelete version 0.2.4
libext2fs version 1.41.12
Processor is little endian.
---------------------


4.設置環境變量
# echo "PATH=/usr/local/extundelete/bin:$PATH" >> /etc/profile
# echo "export PATH" >> /etc/profile
# source /etc/profile


5.建立一些目錄和文件,

6.全部刪除
# rm -rf *


7.查看被刪除文件
1).查看前需卸載該磁盤分區
# cd ~
# umount /dev/sdb1


2).查看文件
注:一般一個分區掛載到一個目錄下時,這個”根”目錄的inode值爲2
我們爲了查看根目錄所有文件,所以查看分區inode爲2的這個部分
# extundelete /dev/sdb1 --inode 2
--------------------------------
.....


File name                                      | Inode number | Deleted status
.                                                2
..                                                2
lost+found                                        11            Deleted
mysql-5.6.10.tar.gz                              12            Deleted
nginx.conf                                        13            Deleted
pic.jpg                                          14            Deleted
--------------------------------
注:標記爲”Deleted”的文件則是被刪除的文件


8.恢復指定的文件
注: 默認被刪文件會恢復到當前目錄下的RECOVERED_FILES目錄中去
# extundelete --restore-file pic.jpg /dev/sdb1  
# cd RECOVERED_FILES/
# ll
----------------
-rw-r--r-- 1 root root 52592 8月  13 07:18 pic.jpg
----------------


9.完全恢復設備上文件
# extundelete --restore-all /dev/sdb1
# ll
-----------------------------------
總用量 34464
-rw-r--r-- 1 root root 35174149 8月  13 07:24 mysql-5.6.10.tar.gz
-rw-r--r-- 1 root root    4551 8月  13 07:24 nginx.conf
-rw-r--r-- 1 root root    52592 8月  13 07:18 pic.jpg
-rw-r--r-- 1 root root    52592 8月  13 07:24 pic.jpg.v1
-----------------------------------
注:這裏完全恢復並不會把之前恢復的pic.jpg文件覆蓋掉,而是重命名爲pic.jpg.v1


10.恢復指定的時間點後被刪文件
1).指定一個時間點
# date -d "Sep 4 03:09:13 2013" +%s 
------------------
1378235353
------------------
2).恢復這個時間點後的文件
# extundelete --restore-all --after “1378235353” /dev/sdb1
-------------------- 
..........
--------------------
注:如果要恢之前的就用before參數。extundelete命令與after結合使用,在進行恢復時非常有用,可以過濾掉那太舊的文件,減小恢復壓力。


11.檢驗是否恢復成功
# md5sum RECOVERED_FILES/mysql-5.6.10.tar.gz 
------------------------------------
9dcee911fb4bc7e977a6b63f4d3ffa63  RECOVERED_FILES/mysql-5.6.10.tar.gz
------------------------------------
上傳剛纔誤刪的mysql安裝包
# rz
...
# md5sum mysql-5.6.10.tar.gz
--------------------------------- 
9dcee911fb4bc7e977a6b63f4d3ffa63  mysql-5.6.10.tar.gz
---------------------------------
MD5值相同,恢復成功。。。

-----------大功告成-------------


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章