日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > > 嵌入式微處理器
[導讀]無論在哪個系統(tǒng)中,刪除文件都是必須謹慎的操作。因為如果不小心刪除了重要文件,就會導致個人或公司出現(xiàn)重大的損失。類似于windows系統(tǒng)誤刪了文件,可以使用一些軟件進行恢復(fù)操作。Linux也是有幾款軟件可以做到誤刪恢復(fù)的。


前言:


無論在哪個系統(tǒng)中,刪除文件都是必須謹慎的操作。


因為如果不小心刪除了重要文件,就會導致個人或公司出現(xiàn)重大的損失。


類似于windows系統(tǒng)誤刪了文件,可以使用一些軟件進行恢復(fù)操作。Linux也是有幾款軟件可以做到誤刪恢復(fù)的。


注意事項:雖然有軟件可以對誤刪的數(shù)據(jù)進行恢復(fù),但是完全恢復(fù)數(shù)據(jù)的概率并不是百分百的。


因此,使用rm命令刪除文件的時候,一定要小心;重要的數(shù)據(jù)一定要有備份;并且恢復(fù)刪除的數(shù)據(jù)前,刪除文件的目錄內(nèi)不能往進存放新東西,否則覆蓋掉的信息無法找回。


下面介紹的就是對Linux中誤刪文件的恢復(fù)操作。


1、lsof?




原理:
這個命令實際上并不能直接用來恢復(fù)文件,不過它可以列出被各種進程打開的文件信息。


配合其他命令,從/proc目錄下的信息中恢復(fù)“文件已刪除,但進程仍保持打開該文件的狀態(tài)”的文件。


/proc目錄是掛載的是在內(nèi)存中所映射的一塊區(qū)域,當我們對這些文件進行讀取和寫入時,實際上是在從內(nèi)存中獲取相關(guān)信息。


因此,當我們對文件進行讀取或?qū)懭霑r(即有進程正使用文件時),哪怕硬盤中的該文件已刪除,還可以從內(nèi)存中的信息恢復(fù)文件。


注意:
必須以 root 用戶的權(quán)限運行, 因為lsof 需要訪問核心內(nèi)存和各種文件。


只能恢復(fù)“文件已刪除,但進程仍保持打開該文件的狀態(tài)”的文件。


如果誤刪了目錄,目錄中的其他文件未被進程打開,沒有進行使用的文件將無法使用此方法恢復(fù)。


lsof輸出信息的意義:

COMMAND 進程的PID(進程標識符)USER 進程所有者FD 用來識別該文件(文件描述符)DEVICE 指定磁盤的名稱SIZE 文件的大小NODE 索引節(jié)點(文件在磁盤上的標識)NAME 打開文件的確切名稱

最常用參數(shù):


 -c 顯示某進程現(xiàn)在打開的文件 -p 顯示哪些文件被某pid進程打開 -g 顯示歸屬某gid的進程情況 -d 顯示目錄下被進程開啟的文件 -d 顯示使用fd為4的進程 -i:80 顯示打開80端口的進程


恢復(fù)文件操作


環(huán)境:
在/mnt下有一些文件,其中一個文件train.less正在被查看,然后另一個終端將其刪除。


【1】lsof查看


查看正在使用刪除文件的進程號

lsof /mnt


【2】恢復(fù)


切換到/proc下,刪除文件對應(yīng)的進程的pid下的文件描述符中的目錄中;將對應(yīng)的內(nèi)容重定向或cp到其他文件中
重點關(guān)注:PID 與 FD

 cd /proc/31284/fd/ cat 4 > /mnt/ferris_train.less

  

?2、extundelete?




原理:
使用存儲在分區(qū)日志中的信息,嘗試恢復(fù)已從ext3或ext4的分區(qū)中刪除的文件


優(yōu)點
相比于ext3grep只能恢復(fù)ext3文件系統(tǒng)的文件,其適用范圍更廣,恢復(fù)速度更快


extundelete官方地址(官方文檔):
http://extundelete.sourceforge.net

extundelete下載地址:
http://downloads.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
(最新版本的extundelete是0.2.4,于2013年1月發(fā)布)


注意:

  • 在數(shù)據(jù)刪除之后,要卸載被刪除數(shù)據(jù)所在的磁盤或是分區(qū)

  • 如果是系統(tǒng)根分區(qū)遭到誤刪除,就要進入單用戶模式,將根分區(qū)以只讀的方式掛載,盡可能避免數(shù)據(jù)被覆蓋

  • 數(shù)據(jù)被覆蓋后無法找回

  • 恢復(fù)仍有一定的機率失敗,平時應(yīng)對重要數(shù)據(jù)作備份,小心使用rm

安裝


1、依賴安裝

centos安裝操作yum install e2fsprogs-devel e2fsprogs* gcc*
ubuntu安裝操作apt-get install build-essential e2fslibs-dev e2fslibs-dev

2、編譯安裝

wget http://downloads.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2tar xf extundelete-0.2.4.tar.bz2cd extundelete-0.2.4./configuremakemake install

  

cd /root/extundelete-0.2.4/src

extundelete?-v

執(zhí)行make命令會在src目錄下生成extundelete可執(zhí)行文件,可在此直接執(zhí)行恢復(fù)命令。


執(zhí)行make install會將程序安裝在/usr/local/bin/下


恢復(fù)文件操作


執(zhí)行extundelete命令的當前目錄必須是可寫的。


1、查看要恢復(fù)文件的分區(qū)的文件系統(tǒng)

df??-Th

2、對要恢復(fù)文件的分區(qū)解除掛載

umount /mnt

3、查看可以恢復(fù)的數(shù)據(jù)

指定誤刪文件的分區(qū)進行查找
最后一列標記為Deleted的文件,即為刪除了的文件

extundelete /dev/vdb1 --inode 2 (根分區(qū)的inode值是2

4、恢復(fù)單個目錄

指定要恢復(fù)的目錄名
如果是空目錄,則不會恢復(fù)


extundelete /dev/vdb1 --restore-directory ferris

當執(zhí)行恢復(fù)文件的命令后,會在執(zhí)行命令的當前的目錄下生成RECOVERED_FILES目錄,恢復(fù)的文件都會放入此目錄中。如未生成目錄,即為失敗。


5、恢復(fù)單個文件

指定要恢復(fù)的文件名
如果幾k大小的小文件,有很大幾率恢復(fù)失敗

   
extundelete /dev/vdb1 --restore-file openssh-7.7p1.tar.gz

6、恢復(fù)全部刪除的文件

無需指定文件名或目錄名,恢復(fù)全部刪除的數(shù)據(jù)


extundelete /dev/vdb1 --restore-all

  
END

來源:CSDN博客? ? 作者:漠效

版權(quán)歸原作者所有,如有侵權(quán),請聯(lián)系刪除。

推薦閱讀

飛機上一般是什么操作系統(tǒng)?

高速CAN、容錯CAN、LIN總線有什么區(qū)別?

大佬終于把鴻蒙OS講明白了,收藏了!

免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!

嵌入式ARM

掃描二維碼,關(guān)注更多精彩內(nèi)容

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉