linux ext3誤刪除終極解決方案

2021-09-04 10:57:05 字數 1447 閱讀 4574

[申明]

[url]關鍵字:

linux誤刪除)

[引言]

ext3檔案系統是目前linux平台使用最多的檔案系統,原起自ext2,在其基礎上加入日誌功能(主要改變),ext3作為許多linux系統預設的檔案系統,誤操作也在所難免。最常見的,基於linux ext3上誤刪除操作的資料恢復就非常重要了。加上現在linux平台通常不用作娛樂,整體而言,資料較windows平台重要;同時,基於linux平台的資料恢復軟體及恢復原理方面的文章都較windows少得多。鑑於此,寫此文章。

[原理]

ext3檔案系統原理方面的文章很多,同時加上linux的開源性及ext3本身的簡潔性,通常了解ext3檔案系統並不是難事。作為誤刪除,我們需要了解檔案的儲存結構與刪除所做的實際操作。

ext3是典型的unix類檔案系統,首先將整個分割槽按固定大小的block分組,再將若干固定數目的block分組為block group。這個概念為了描述方便,我們先放一放。再說別的。

ext3中的每個檔案可以看成由引數+資料組成。比如乙個a.tar,其檔案包是資料,它的大小、日期、儲存位置等。用來區別每個檔案的唯一標識是這個檔案的"標號"

,可以簡單理解:乙個ext3檔案系統裡有n個檔案,其中m號檔案大小為xx,日期為xx,資料儲存位置為xx,這樣就可以通過儲存位置得到其資料***。這裡沒有談到名稱,初步可以理解為ext3的檔案系統裡沒有名稱。名稱和目錄樹都是為了更人性化地解讀檔案系統的乙個助記符。沒有名稱和目錄樹,ext3也可以完好地儲存檔案(可以這樣理解),但只能看到一大堆大小不同、只在標號、沒有目錄層的「散」檔案。我們看如何在此基礎上加入目錄:首先我們將所有目錄、檔案統統看成檔案(其實目錄本身和普通資料檔案一樣,也有屬性、大小、內容,只是其內容是為了助記整個檔案系統的目錄結構的)。目錄中可以儲存其下檔案(包括目錄)的標號,以此類推。但只有標號,很難理解檔案所代表的內容,所以可以給標號同時繫結乙個人性化的名稱,即檔名,使檔名與檔案標號一一對應。

每個檔案特有的屬性通過編好序的inode進行描述。通常根目錄是2號檔案,根目錄本身儲存(可以想像成與普通檔案一樣的記錄)根目錄下一級子目錄及檔案的名稱及對應的inode編號,在遍歷檔案系統時可以讀到檔名稱,同時讀到其節點號。

每個塊組(前面講過)分散放置系統中所有的inode,其儲存方式通過其他結構進行描述。系統可以很容易算出第n號節點的儲存位置。通過節點就可以找到資料了。

刪除檔案的目的是為了釋放空間、從索引中去除相應記錄。為了實現這樣的目的,ext3檔案的刪除會做這樣的操作,1、重組目錄檔案的內容(目錄檔案中的記錄),在邏輯上去除被刪除檔名稱與inode號的記錄;2、更改被刪除檔案的inode,至少去除其位置資訊(直接與間接block號);3、在bitmap區釋放原先占用的block(將原來的使用位更改為空閒,ext3中即將1更改為0)

從刪除檔案的原理來看,即使通過原來目錄記錄的殘留資訊可以找到被刪除檔案的名稱,也可以找到其原來的節點號,但因位置資訊已被清除,資料還是不能直接恢復。

資料恢復的方法(待續。。。)。

誤刪除 linux 系統檔案了?這個方法教你解決

於網際網路並適當的修改 誤刪除linux系統檔案了?不用急,本文將給你乙個恢復linux檔案的方法,讓你輕鬆應對運維中的各風險問題。方法總比問題多 說在前面的話 針對日常維護操作,難免會出現檔案誤刪除的操作。大家熟知linux檔案系統不同win有 站,刪除後的檔案可以到垃圾箱尋回,要知道linux檔...

利用ext3grep恢復誤刪除檔案

利用ext3grep恢復誤刪除檔案 第一步.檢視所需的相關庫 root ns2 rpm qa grep e2fsprogs e2fsprogs libs 1.39 8.el5 e2fsprogs 1.39 8.el5 e2fsprogs devel 1.39 8.el5 注 rhel4下沒有libs...

ext3grep恢復linux下誤刪除的檔案

原始出處 作者資訊和本宣告。否則將追究法律責任。在linux下使用rm rf時千萬要小心,但是總有不小心的時候,導致誤刪除一些檔案,這裡我做個試驗,故意刪除 data 2.txt檔案,測試檔案恢復,此時2.txt檔案已經刪除。1 安裝ext3grep軟體 wget tar zxvf ext3grep...