91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中怎么恢復誤刪文件

發布時間:2021-08-11 16:27:22 來源:億速云 閱讀:245 作者:Leah 欄目:系統運維

這期內容當中小編將會給大家帶來有關Linux中怎么恢復誤刪文件,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1、lsof

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

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

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

因此,當我們對文件進行讀取或寫入時(即有進程正使用文件時),哪怕硬盤中的該文件已刪除,還可以從內存中的信息恢復文件。

注意:

  •  必須以 root 用戶的權限運行, 因為lsof 需要訪問核心內存和各種文件。

  •  只能恢復“文件已刪除,但進程仍保持打開該文件的狀態”的文件。

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

lsof輸出信息的意義:

Linux中怎么恢復誤刪文件

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

最常用參數:

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

恢復文件操作

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

【1】lsof查看

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

lsof /mnt

Linux中怎么恢復誤刪文件

Linux中怎么恢復誤刪文件

【2】恢復

切換到/proc下,刪除文件對應的進程的pid下的文件描述符中的目錄中;將對應的內容重定向或cp到其他文件中。

重點關注:PID 與 FD

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

Linux中怎么恢復誤刪文件

Linux中怎么恢復誤刪文件

Linux中怎么恢復誤刪文件

2、extundelete

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

優點:相比于ext3grep只能恢復ext3文件系統的文件,其適用范圍更廣,恢復速度更快

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月發布)

注意:

  •  在數據刪除之后,要卸載被刪除數據所在的磁盤或是分區

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

  •  數據被覆蓋后無法找回

  •  恢復仍有一定的機率失敗,平時應對重要數據作備份,小心使用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.bz2  tar xf  extundelete-0.2.4.tar.bz2  cd  extundelete-0.2.4  ./configure  make  make install

Linux中怎么恢復誤刪文件

cd /root/extundelete-0.2.4/src

Linux中怎么恢復誤刪文件

extundelete -v

Linux中怎么恢復誤刪文件

  •  執行make命令會在src目錄下生成extundelete可執行文件,可在此直接執行恢復命令。

  •  執行make install會將程序安裝在/usr/local/bin/下

恢復文件操作

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

1、查看要恢復文件的分區的文件系統

df  -Th

Linux中怎么恢復誤刪文件

2、對要恢復文件的分區解除掛載

umount /mnt

Linux中怎么恢復誤刪文件

3、查看可以恢復的數據

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

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

Linux中怎么恢復誤刪文件

4、恢復單個目錄

指定要恢復的目錄名,如果是空目錄,則不會恢復。

extundelete /dev/vdb1 --restore-directory  ferris

Linux中怎么恢復誤刪文件

Linux中怎么恢復誤刪文件

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

5、恢復單個文件

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

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

Linux中怎么恢復誤刪文件

6、恢復全部刪除的文件

無需指定文件名或目錄名,恢復全部刪除的數據。

extundelete /dev/vdb1 --restore-all

Linux中怎么恢復誤刪文件

上述就是小編為大家分享的Linux中怎么恢復誤刪文件了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

灵川县| 兴义市| 黎城县| 布拖县| 玉龙| 若尔盖县| 中卫市| 嘉禾县| 内乡县| 读书| 华池县| 荣成市| 瓦房店市| 白银市| 荣昌县| 余姚市| 临高县| 广饶县| 盐津县| 隆林| 若羌县| 寻乌县| 兴宁市| 玉溪市| 巧家县| 雅安市| 贵港市| 芒康县| 广安市| 太和县| 濮阳市| 罗源县| 连云港市| 包头市| 蓝田县| 微山县| 吉林市| 贵德县| 潢川县| 孟连| 陆丰市|