ext3新增了日誌功能,下面是研究通過日誌恢復檔案時的一點心得,工作需要,未作深入研究。
只言片語,不成體系,個人理解,可能不對!
jbd日誌過程:(ordered為例)
1. 對元資料的修改(以塊為單位)先記錄到日誌中(這時的資料應該還在記憶體)
2. 對檔案內容進行相應操作
3. 進行commit操作,表示此次操作完成,日誌中的元資料可以生效
4. jbd守護程序定時把日誌中的元資料flush到磁碟
刪除操作為例:
1. 在記憶體中將inode的資料修改,修改後的inode寫入日誌
2. 檔案資料清空(實際上只是清除指標,可能在上一步已經做完)
4. 修改後的inode被jbd守護程序flush到磁碟
故被刪除的檔案想要恢復,只能祈禱inode所在塊,在之前的日誌記錄中,被寫到了日誌中
參考:
ext3日誌檔案系統工作原理理解
ext3檔案系統是在ext2檔案系統的基礎上增加了日誌功能。具體的做法就是,在向檔案系統中的檔案寫入資料的時候,會先產生乙個journal log日誌,這個journal log日誌是生成在記憶體中的。系統中有乙個後台程序kjournald2,會定時檢視這些journal log日誌對應的磁碟操作是...
Ext2與Ext3檔案系統的區別
ext2 是 gnu linux 系統中標準的檔案系統,其特點為訪問檔案的效能極好,對於中小型的檔案更顯示出優勢,這主要得利於其簇快取層的優良設計。其單一檔案大小與檔案系統本身的 容量上限與檔案系統本身的簇大小有關,在一般常見的 x86 電腦系統中,簇最大為 4kb,則單一檔案大小上限為 2048g...
Ext2與Ext3檔案系統的區別
ext2 是 gnu linux 系統中標準的檔案系統,其特點為訪問檔案的效能極好,對於中小型的檔案更顯示出優勢,這主要得利於其簇快取層的優良設計。其單一檔案大小與檔案系統本身的容量上限與檔案系統本身的簇大小有關,在一般常見的 x86 電腦系統中,簇最大為 4kb,則單一檔案大小上限為 2048gb...