<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Linux下高效數(shù)據(jù)恢復(fù)軟件extundelete應(yīng)用實(shí)戰(zhàn)

          Linux下高效數(shù)據(jù)恢復(fù)軟件extundelete應(yīng)用實(shí)戰(zhàn)

          作者: 時(shí)間:2016-09-12 來(lái)源:網(wǎng)絡(luò) 收藏

          [root@cloud1 ~]# mkdir /data/test

          [root@cloud1 ~]# echo test > /data/test/mytest.txt

          [root@cloud1 ~]#cd /data

          [root@cloud1 data]# md5sum passwd

          0715baf8f17a6c51be63b1c5c0fbe8c5 passwd

          [root@cloud1 data]# md5sum test/mytest.txt

          eb42e4b3f953ce00e78e11bf50652a80 test/mytest.txt

          [root@cloud1 data]# rm -rf /data/*

          2.卸載磁盤分區(qū)

          在將數(shù)據(jù)誤刪除后,立刻需要做的就是卸載這塊磁盤分區(qū):

          [root@cloud1 data]#cd /mnt

          [root@cloud1 mnt]# umount /data

          3.查詢可恢復(fù)的數(shù)據(jù)信息

          通過(guò)命令可以查詢/dev/sdc1分區(qū)可恢復(fù)的數(shù)據(jù)信息:

          [root@cloud1 /]# /dev/sdc1 --inode 2

          ......

          File name | Inode number | Deleted status

          . 2

          .. 2

          lost+found 11 Deleted

          passwd 49153 Deleted

          test 425985 Deleted

          ganglia-3.4.0 245761 Deleted

          根據(jù)上面的輸出,標(biāo)記為Deleted狀態(tài)的是已經(jīng)刪除的文件或目錄。同時(shí)還可以看到每個(gè)已刪除文件的inode值,接下來(lái)就可以恢復(fù)文件了。

          4.恢復(fù)單個(gè)文件

          執(zhí)行如下命令開(kāi)始恢復(fù)文件:

          [root@cloud1 /]# extundelete /dev/sdc1 --restore-file passwd

          Loading filesystem metadata ... 40 groups loaded.

          Loading journal descriptors ... 54 descriptors loaded.

          Successfully restored file passwd

          [root@cloud1 /]# cd RECOVERED_FILES/

          [root@cloud1 RECOVERED_FILES]# ls

          passwd

          [root@cloud1 RECOVERED_FILES]# md5sum passwd

          0715baf8f17a6c51be63b1c5c0fbe8c5 passwd

          extundelete恢復(fù)單個(gè)文件的參數(shù)是“--restore-file”,這里需要注意的是,“--restore-file”后面指定的是恢復(fù)文件路徑,這個(gè)路徑是文件的相對(duì)路徑。相對(duì)路徑是相對(duì)于原來(lái)文件的存儲(chǔ)路徑而言的,比如,原來(lái)文件的存儲(chǔ)路徑是/data/passwd,那么在參數(shù)后面直接指定passwd文件即可,如果原來(lái)文件的存儲(chǔ)路徑是/data/test/mytest.txt,那么在參數(shù)后面通過(guò)“test/mytest.txt”指定即可。

          在文件恢復(fù)成功后,extundelete命令默認(rèn)會(huì)在執(zhí)行命令的當(dāng)前目錄下創(chuàng)建一個(gè)RECOVERED_FILES目錄,此目錄用于存放恢復(fù)出來(lái)的文件,所以執(zhí)行extundelete命令的當(dāng)前目錄必須是可寫(xiě)的。

          根據(jù)上面的輸出,通過(guò)md5sum命令校驗(yàn),校驗(yàn)碼與之前的完全一致,表明文件恢復(fù)成功。

          6.2通過(guò)extundelete恢復(fù)單個(gè)目錄

          extundelete除了支持恢復(fù)單個(gè)文件,也支持恢復(fù)單個(gè)目錄,在需要恢復(fù)目錄時(shí),通過(guò) “--restore-directory”選項(xiàng)即可恢復(fù)指定目錄的所有數(shù)據(jù)。

          繼續(xù)在上面模擬的誤刪除數(shù)據(jù)環(huán)境下操作,現(xiàn)在要恢復(fù)/data目錄下的ganglia-3.4.0文件夾,操作如下:

          [root@cloud1 mnt]# extundelete /dev/sdc1 --restore-directory /ganglia-3.4.0

          Loading filesystem metadata ... 40 groups loaded.

          Loading journal descriptors ... 247 descriptors loaded.

          Searching for recoverable inodes in directory /ganglia-3.4.0 ...

          781 recoverable inodes found.

          Looking through the directory structure for deleted files ...

          4 recoverable inodes still lost.

          [root@cloud1 mnt]# ls

          RECOVERED_FILES

          [root@cloud1 mnt]# cd RECOVERED_FILES/

          [root@cloud1 RECOVERED_FILES]# ls

          ganglia-3.4.0

          可以看到之前刪除的目錄ganglia-3.4.0已經(jīng)成功恢復(fù)了,進(jìn)入這個(gè)目錄檢查發(fā)現(xiàn):所有文件內(nèi)容和大小都正常。

          6.3 通過(guò)extundelete恢復(fù)所有誤刪除數(shù)據(jù)

          當(dāng)需要恢復(fù)的數(shù)據(jù)較多時(shí),一個(gè)個(gè)地指定文件或目錄將是一個(gè)非常繁重和耗時(shí)的工作,不過(guò),extundelete考慮到了這點(diǎn),此時(shí)可以通過(guò)“--restore-all”選項(xiàng)來(lái)恢復(fù)所有被刪除的文件或文件夾。

          仍然在上面模擬的誤刪除數(shù)據(jù)環(huán)境下操作,現(xiàn)在要恢復(fù)/data目錄下所有數(shù)據(jù),操作過(guò)程如下:

          [root@cloud1 mnt]# extundelete /dev/sdc1 --restore-all

          Loading filesystem metadata ... 40 groups loaded.

          Loading journal descriptors ... 247 descriptors loaded.

          Searching for recoverable inodes in directory / ...

          781 recoverable inodes found.

          Looking through the directory structure for deleted files ...

          0 recoverable inodes still lost.

          [root@cloud1 mnt]# ls

          RECOVERED_FILES

          [root@cloud1 mnt]# cd RECOVERED_FILES/

          [root@cloud1 RECOVERED_FILES]# ls

          ganglia-3.4.0 passwd test

          [root@cloud1 RECOVERED_FILES]# du -sh /mnt/RECOVERED_FILES/*

          15M /mnt/RECOVERED_FILES/ganglia-3.4.0

          4.0K /mnt/RECOVERED_FILES/passwd

          8.0K /mnt/RECOVERED_FILES/test

          可以看到所有數(shù)據(jù)全部完整地恢復(fù)了。

          6.4通過(guò)extundelete恢復(fù)某個(gè)時(shí)間段的數(shù)據(jù)

          有時(shí)候刪除了大量的數(shù)據(jù)量,其中很多數(shù)據(jù)都是沒(méi)用的,我們僅需要恢復(fù)其中的一部分?jǐn)?shù)據(jù),此時(shí),如果采用恢復(fù)全部數(shù)據(jù)的辦法,不但耗時(shí),而且浪費(fèi)資源,在這種情況下,就需要采用另外的一種恢復(fù)機(jī)制有選擇地恢復(fù),extundelete提供了“—after”“和”--before“參數(shù),可以通過(guò)指定某個(gè)時(shí)間段,進(jìn)而只恢復(fù)這個(gè)時(shí)間段內(nèi)的數(shù)據(jù)。

          下面通過(guò)一個(gè)簡(jiǎn)單示例,描述下如何恢復(fù)某個(gè)時(shí)間段內(nèi)的數(shù)據(jù)。

          我們首先假定在/data目錄下有個(gè)剛剛創(chuàng)建的壓縮文件ganglia-3.4.0.tar.gz,然后刪除此文件,接著卸載/data分區(qū),開(kāi)始恢復(fù)一小時(shí)內(nèi)的文件,操作如下:

          [root@cloud1 ~]#cd /data/

          [root@cloud1 data]# cp /app/ganglia-3.4.0.tar.gz /data



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();