LINUX使用extundelete進行資料恢復

2022-03-31 19:41:33 字數 1903 閱讀 6181

這裡我們介紹一下使用 linux 平台下的 extundelete 對誤刪除的資料進行恢復的操作

如果我們的源裡面新增了 epel 倉庫的話,我們可以直接使用下面的命令安裝。

yum install extundelete -y

wget  

yum -y install  bzip2  e2fsprogs-devel  e2fsprogs  gcc-c++make

tar -xvjf extundelete-0.2.4.tar.bz2

cd extundelete-0.2.4./configure

make &&make install

因為我的資料路徑比較深,所以我們需要一步步查詢,可以先從根分割槽 inode 查詢

extundelete /dev/sdb1 --inode 2

extundelete /dev/sda5 --inode 24641537

我們看到專案的 inode,

extundelete /dev/sda5 --inode 24903688

我們找到了最終刪除資料的目錄 upload

extundelete /dev/sda5 --inode 24904454

我們可以看到標稱的 deleted,這些資料就是我們要進行恢復的資料。

那我們就恢復指定目錄,以當前分割槽為根分割槽進行路徑設定,專案名進行掩蓋

因為磁碟資料一直在讀寫,所以有些檔案之前的 inode 已經被重新分配了,導致部分資料無法恢復,資料最後會告訴我們有多少檔案沒有回覆,但是大部分資料我們已經恢復了,這就是很重要的事情了。

那我們檢視一下回覆的資料吧,軟體會在當前目錄生成乙個目錄 recovered_files 裡面就是我們恢復的資料。

恢復全部資料可以使用命令

extundelete /dev/sda5 --restore-all

其中,引數(options)有:

–version, -[vv],顯示軟體版本號。

–help,顯示軟體幫助資訊。

–superblock,顯示超級塊資訊。

–journal,顯示日誌資訊。

–after dtime,時間引數,表示在某段時間之後被刪的檔案或目錄。

–before dtime,時間引數,表示在某段時間之前被刪的檔案或目錄。

動作(action)有:

–inode ino,顯示節點「ino」的資訊。

–block blk,顯示資料塊「blk」的資訊。

–restore-inode ino[,ino,…],恢復命令引數,表示恢復節點「ino」的檔案,恢復的檔案會自動放在當前目錄下的 restored_files 資料夾中,使用節點編號作為副檔名。

–restore-file 『path』,恢復命令引數,表示將恢復指定路徑的檔案,並把恢復的檔案放在當前目錄下的 recovered_files 目錄中。

–restore-files 『path』,恢復命令引數,表示將恢復在路徑中已列出的所有檔案。

–restore-all,恢復命令引數,表示將嘗試恢復所有目錄和檔案。

-j journal,表示從已經命名的檔案中讀取擴充套件日誌。

-b blocknumber,表示使用之前備份的超級塊來開啟檔案系統,一般用於檢視現有超級塊是不是當前所要的檔案。

-b blocksize,通過指定資料塊大小來開啟檔案系統,一般用於檢視已經知道大小的檔案。

在資料刪除之後,首先要解除安裝被刪除資料所在的磁碟或是分割槽,如果是系統根分割槽遭到誤刪除,就需要進入單使用者模式下,將根分割槽以唯讀的方式掛載。

原因:因為檔案刪除之後,僅僅是將檔案的 inode 節點中的扇區指標清零,實際上檔案還存在磁碟上面,如果磁碟以讀寫方式掛載,這些刪除的資料塊可能會被系統從新分配出去,這些資料塊被覆蓋之後,這些資料就真的丟失了,所以以唯讀的方式掛載,盡可能避免資料被覆蓋。

Linux 使用技巧

1.使用虛擬控制台 登入後按alt f2鍵這時又可以看到 login 提示符,這個就是第二個虛擬控 制台.一般新安裝的linux有四個虛擬控制台,可以用alt f1 alt f4來訪問.虛擬 控制台最有用的時候是當乙個程式出錯鎖住輸入時可以切換到其他虛擬控制台登入 進入後殺掉這個出錯的程序.2.拷貝...

誰在使用Linux?

我們整天在說 linux 但是,究竟是哪些人在實際使用 linux 心裡卻不很清楚,這叫 無的放矢 在我國境內,對於 linux 的使用情況,更是 心中無數 可謂 隨便放矢 使用 linux 與windows 乙個樣,讓人也會 上癮 使用什麼樣的 linux 發行版,其使用習慣會形成一種特定的 亞文...

linux命令 使用

匹配多個 find name pdf o name txt 檢視被暫用的指定埠程序id 主要查詢tcp和udp協議 netstat tunp awk grep 8080 grep 0 9 awk awk f svn提交n多 先add svn st grep e m d a awk xargs svn...