隨筆-179  評論-666  文章-29  trackbacks-0

          一、背景

          系統(tǒng)管理員,最謹(jǐn)慎的linux就是rm命令了,一不小心數(shù)據(jù)就沒干掉,最恐怖的是數(shù)據(jù)沒有備份,沒法還原了,此類事情發(fā)生的太多了,針對于此,我們經(jīng)過多次嘗試演練,終于成功的把大部分刪除的數(shù)據(jù)找回來了,下面我把演練過程給大家介紹一下。

          二、安裝恢復(fù)軟件

          extundelete,該工具官方給出的是可以恢復(fù)ext3或者ext4文件系統(tǒng)被刪除的文件。

          1:通過命令安裝

          #yum install extundelete -y

          2:通過源碼編譯安裝

          #yum -y install e2fsprogs-devel e2fsprogs  #wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/server/extundelete-0.2.4.tar.bz2 #tar -xvjf extundelete-0.2.4.tar.bz2 #cd extundelete-0.2.4 #./configure #make &&make install

          三、刪除數(shù)據(jù)查找

          首先,我們先刪除一個文件,如圖:

          Linux怎樣恢復(fù)誤刪除的數(shù)據(jù)

          如上圖,我們剛才在/boot目錄下刪除了個symvers-2.6.32-431.el6.x86_64.gz文件,/boot是落到/dev/sda1下

          在Linux下可以通過“ls -id”命令來查看某個文件或者目錄的inode值,例如查看根目錄的inode值,可以輸入:

          [root@cloud boot]# ls -id /boot 2 /boot

          注:根目錄的inode一般為2

          然后我們開始查找被刪除的文件,需要根據(jù)分區(qū)inode查找,命令如下:

          #extundelete /dev/sda1 --inode 2

          結(jié)果如下圖:

          Linux怎樣恢復(fù)誤刪除的數(shù)據(jù)

          我們就可以看到標(biāo)識為Deleted的被刪除數(shù)據(jù)了。

          四、數(shù)據(jù)恢復(fù)

          我們就開始恢復(fù),命令如下:

          #extundelete /dev/sda1 --restore-file symvers-2.6.32-431.el6.x86_64.gz

          如圖:

          Linux怎樣恢復(fù)誤刪除的數(shù)據(jù)

          Linux怎樣恢復(fù)誤刪除的數(shù)據(jù)

          還原成功

          當(dāng)然,還有可能刪除整個文件夾,我們也舉個例子,如下:

          #extundelete /dev/sda1 --restore-directory test

          恢復(fù)全部刪除數(shù)據(jù),如下:

          #extundelete /dev/sdb1 --restore-all

          也可以通過時間段恢復(fù),這里就不說了,參數(shù)如下:

          --version, -[vV],顯示軟件版本號。 --help,顯示軟件幫助信息。 --superblock,顯示超級塊信息。 --journal,顯示日志信息。 --after dtime,時間參數(shù),表示在某段時間之后被刪的文件或目錄。 --before dtime,時間參數(shù),表示在某段時間之前被刪的文件或目錄。 動作(action)有: --inode ino,顯示節(jié)點“ino”的信息。 --block blk,顯示數(shù)據(jù)塊“blk”的信息。 --restore-inode ino[,ino,...],恢復(fù)命令參數(shù),表示恢復(fù)節(jié)點“ino”的文件,恢復(fù)的文件會自動放在當(dāng)前目錄下的RESTORED_FILES文件夾中,使用節(jié)點編號作為擴(kuò)展名。 --restore-file 'path',恢復(fù)命令參數(shù),表示將恢復(fù)指定路徑的文件,并把恢復(fù)的文件放在當(dāng)前目錄下的RECOVERED_FILES目錄中。 --restore-files 'path',恢復(fù)命令參數(shù),表示將恢復(fù)在路徑中已列出的所有文件。 --restore-all,恢復(fù)命令參數(shù),表示將嘗試恢復(fù)所有目錄和文件。 -j journal,表示從已經(jīng)命名的文件中讀取擴(kuò)展日志。 -b blocknumber,表示使用之前備份的超級塊來打開文件系統(tǒng),一般用于查看現(xiàn)有超級塊是不是當(dāng)前所要的文件。 -B blocksize,通過指定數(shù)據(jù)塊大小來打開文件系統(tǒng),一般用于查看已經(jīng)知道大小的文件。

          五、總結(jié)

          數(shù)據(jù)恢復(fù),不一定能全部將數(shù)據(jù)恢復(fù)回來,還是一句話,操作要謹(jǐn)慎。萬一操作失誤,也不要慌,將損失減少到最小,首先停止所有操作,其次讓專業(yè)人員去處理。

          阿里云服務(wù)器優(yōu)惠券

          posted on 2017-12-23 16:11 Alpha 閱讀(2013) 評論(0)  編輯  收藏 所屬分類: Linux Nginx
          主站蜘蛛池模板: 九龙县| 西华县| 昆山市| 吉水县| 华宁县| 沁阳市| 合水县| 怀来县| 平泉县| 富锦市| 大安市| 海门市| 多伦县| 绥棱县| 报价| 昌平区| 大理市| 封开县| 梧州市| 济南市| 和硕县| 越西县| 镇江市| 临桂县| 北安市| 平罗县| 南漳县| 阳高县| 汕头市| 汪清县| 禹州市| 织金县| 象山县| 宣汉县| 凤城市| 德清县| 新丰县| 丰顺县| 松潘县| 昭平县| 平武县|