共計(jì) 1793 個(gè)字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。
這篇文章主要為大家展示了“誤刪除 Linux 系統(tǒng)文件如何處理”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓丸趣 TV 小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“誤刪除 Linux 系統(tǒng)文件如何處理”這篇文章吧。
說(shuō)在前面的話
針對(duì)日常維護(hù)操作,難免會(huì)出現(xiàn)文件誤刪除的操作。大家熟知 linux 文件系統(tǒng)不同 win 有回收站,刪除后的文件可以到垃圾箱尋回,要知道 linux 文件修復(fù)比較費(fèi)勁,網(wǎng)絡(luò)上面的文檔也是五花八門(mén)。所以本次研究一種比較靠譜的文件和目錄恢復(fù)方法,也給維護(hù)人員留一條后路。
分析對(duì)比 debugfs. testdisk 6.14. extundelete,對(duì)比各自官網(wǎng)介紹和操作說(shuō)明本次決定研究 extundelete 對(duì)文件和目錄的恢復(fù)操作。
extundelete 下載官網(wǎng)地址:https://pkgs.org/download/extundelete
Linux 下文件誤刪除,使用 extundelete 恢復(fù)測(cè)試過(guò)程。
給虛擬主機(jī)添加一塊磁盤(pán),磁盤(pán)為 /dev/sdb,如下:
格式化磁盤(pán),并進(jìn)行掛載:
# mkfs.ext4 /dev/sdb # mkdir /usr/local/dbdata/ # mount /dev/sdb /usr/local/dbdata/
測(cè)試誤操作刪除以下文件:
/usr/local/dbdata/gperftools-2.4.tar.gz #文件 /usr/local/dbdata/pcre-8.32 # 目錄
執(zhí)行誤操作:
# rm -rf /usr/local/dbdata/gperftools-2.4.tar.gz /usr/local/dbdata/pcre-8.32
將誤操作所在分區(qū)進(jìn)行只讀保護(hù)
如果確定文件被誤刪,在沒(méi)有備份的情況下請(qǐng)馬上對(duì)分區(qū)實(shí)施寫(xiě)入保護(hù)(預(yù)防新的寫(xiě)入覆蓋誤刪的塊數(shù)據(jù),因此權(quán)限給只讀):
# mount -o remount,ro /dev/sdb # mount -o remount,ro /usr/local/dbdata/
數(shù)據(jù)恢復(fù)工具安裝
工具安裝部署
官方網(wǎng)站是 http://extundelete.sourceforge.net/,其目前的穩(wěn)定版本是 extundelete-0.2.4.
工具下載
# wget https://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
解壓安裝
依賴(lài)包
# yum -y install gcc-c++ e2fsprogs.x86_64 e2fsprogs-devel.x86_64 # tar -jxvf extundelete-0.2.4.tar.bz2 # cd extundelete-0.2.4 # ./configure # make make install
驗(yàn)證安裝結(jié)果
# extundelete -v
文件恢復(fù)過(guò)程
恢復(fù)指定文件:
原理:從根節(jié)點(diǎn) (inode=2) 開(kāi)始找到被刪除文件的 i 節(jié)點(diǎn),然后 recover i 節(jié)點(diǎn)。
以下是模擬刪除 gperftools-2.4.tar.gz(文件)和 pcre-8.32 (目錄)。
先檢測(cè)被刪除的文件有哪些:
# extundelete /dev/sdb --inode 2
從圈出來(lái)的可以看到,有以下兩個(gè):
gperftools-2.4.tar.gz 15 Deleted pcre-8.32 655361 Deleted
注意:恢復(fù)過(guò)程不要在誤刪分區(qū)進(jìn)行,謹(jǐn)防 inode. block 塊相互覆蓋
先恢復(fù)文件(可根據(jù)文件名進(jìn)行恢復(fù)):
# extundelete /dev/sdb –restore-file gperftools-2.4.tar.gz
恢復(fù)目錄(根據(jù)目錄名恢復(fù)):
# extundelete /dev/sdb –restore-directory pcre-8.32
*** 會(huì)在當(dāng)前目錄下看到一個(gè)名為 RECOVERED_FILES 的目錄,在目錄里就可以看到被誤刪除的文件以及目錄:
說(shuō)在后面的話
根據(jù)上面操作證明 extundelete 工具可以實(shí)現(xiàn)對(duì)誤刪數(shù)據(jù)的恢復(fù),而且操作簡(jiǎn)單。
以上是“誤刪除 Linux 系統(tǒng)文件如何處理”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!