您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)企業(yè)服務(wù)器文件被誤刪除后如何恢復(fù),文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
用ext3grep恢復(fù)rm -rf 誤刪除的文件
Linux作為企業(yè)級服務(wù)器,數(shù)據(jù)安全性至關(guān)重要,任何有價值的數(shù)據(jù)被誤刪除都是不能容忍的,甚至可能帶來大的災(zāi)難!作為linux系統(tǒng)管理員,一定要有數(shù)據(jù)保護意思,不但要做好數(shù)據(jù)備份工作,還應(yīng)該有在將重要數(shù)據(jù)誤刪除后恢復(fù)的能力.在這里給大家介紹一個開源的數(shù)據(jù)恢復(fù)工具ext3grep,該工具可以恢復(fù)rm –rf誤刪除的文件
一、ext3grep的原理:
利用ext3grep恢復(fù)文件并不依賴于任何文件格式,首先ext3grep利用root的inode來獲取文件系統(tǒng)中所有的文件信息,包括存在的或已刪除的文件,這些信息包括文件名、inode號、然后利用inode結(jié)合系統(tǒng)日志去查詢該inode所在的block位置,包括直接、間接塊的信息,最后用dd命令來將數(shù)據(jù)信息備份出來,從而恢復(fù)數(shù)據(jù)!
當(dāng)發(fā)現(xiàn)文件被誤刪除后,首先做的第一件事就是馬上卸載該文件所在的分區(qū),或者以只讀的方式掛載該分區(qū),原因是文件被刪除后,文件內(nèi)的數(shù)據(jù)還保留在磁盤上,除非系統(tǒng)將這些數(shù)據(jù)所在的塊分配出去了,要不然一直都會存在,所以為了保險,首先做的事就是卸載文件所在的分區(qū),
至于根分區(qū)的話,可以重啟系統(tǒng),然后以單用戶模式進入系統(tǒng),以只讀的方式掛載根分區(qū):
mount –o ro,remount /
二、ext3grep安裝
在安裝之前首先檢查一下系統(tǒng)是否已安裝e2fsprogs相關(guān)軟件,如果沒有需要下載安裝,要不然安裝ext3greep時會報錯!
[root@localhost ~]# rpm -qa|grep e2fs
e2fsprogs-devel-1.39-23.el5_5.1
e2fsprogs-libs-1.39-23.el5_5.1
e2fsprogs-1.39-23.el5_5.1
e2fsprogs-libs-1.39-23.el5_5.1
可以從網(wǎng)上下載ext3grep源碼包:
wget http://code.google.com/p/ext3grep/downloads/detail?name=ext3grep-0.10.2.tar.gz
解壓、編譯、安裝
tar zxf ext3grep-0.10.2.tar.gz
cd ext3grep-0.10.2
./configure –prefix=/usr/local/ext3grep
make
make install
三、利用ext3grep恢復(fù)rm –rf刪除的數(shù)據(jù)
首先我們模擬一個磁盤分區(qū),創(chuàng)建一個虛擬設(shè)備
[root@localhost ~]# mkdir /disk 創(chuàng)建掛載點
[root@localhost ~]# mkdir /virtual
[root@localhost ~]# dd if=/dev/zero of=/virtual/disk1 conut=102400
[root@localhost ~]# mkfs -t ext3 /vittual/disk1
[root@localhost ~]# mount -o loop /virtual/disk1 /disk
[root@localhost ~]# echo “this is a ext3grep test,thank you” >/disk/ext3grep-test.txt
用rm –rf 刪除剛才創(chuàng)建的文件
rm –rf /disk/*
然后查看確認文件已被刪除
三、用ext3grep恢復(fù)被刪除的文件
創(chuàng)建一個專門用來存放被恢復(fù)文件的目錄
mkdir restore
cd restore
四、恢復(fù)文件的過程
在剛創(chuàng)建的restore目錄下執(zhí)行
查看被刪除的文件信息
[root@localhost restore]# /usr/local/ext3grep/bin/ext3grep /virtual/disk --ls --inode 2
.-- File type in dir_entry (r=regular file, d=directory, l=symlink)
| .-- D: Deleted ; R: Reallocated
Indx Next | Inode | Deletion time Mode File name
==========+==========+----------------data-from-inode------+-----------+=========
0 1 d 2 drwxr-xr-x .
1 end d 2 drwxr-xr-x ..
2 end d 11 D 1340620814 Mon Jun 25 18:40:14 2012 drwx------ lost+found
3 end r 12 D 1340620814 Mon Jun 25 18:40:14 2012 rrw-r--r-- ext3grep-test.txt
開始恢復(fù)
[root@localhost restore]# /usr/local/ext3grep/bin/ext3grep /virtual/disk --restore-file ext3grep-test.txt
Running ext3grep version 0.10.2
WARNING: I don't know what EXT3_FEATURE_COMPAT_EXT_ATTR is.
Number of groups: 7
Minimum / maximum journal block: 16616 / 20729
Loading journal descriptors... sorting... done
The oldest inode block that is still in the journal, appears to be from 1340620763 = Mon Jun 25 18:39:23 2012
Number of descriptors in journal: 20; min / max sequence numbers: 2 / 5
Writing output to directory RESTORED_FILES/
Loading disk.ext3grep.stage2... done
Restoring ext3grep-test.txt
由上面的輸出可以得知,ext3grep-test.txt文件已經(jīng)恢復(fù)成功,在當(dāng)前目錄下生成一個RESTORED_FILES目錄,恢復(fù)過后的文件就放在那里。
[root@localhost RESTORED_FILES]# ls
ext3grep-test.txt
此工具雖然能夠恢復(fù)被rm –rf 命令刪除的文件,但是做為一個系統(tǒng)管理人員應(yīng)該在腦海中每時每刻都應(yīng)該有一個備份數(shù)據(jù)的概念,畢竟備份才是王道!
當(dāng)然rhel7中已經(jīng)有系統(tǒng)恢復(fù)工具,不再使用外來工具恢復(fù)數(shù)據(jù)了。
上述就是小編為大家分享的企業(yè)服務(wù)器文件被誤刪除后如何恢復(fù)了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。