Linux EXT2 檔案系統

2021-07-02 21:58:46 字數 1396 閱讀 8475

1. ext2 檔案系統

ext2檔案系統最前面有乙個啟動區,這個啟動扇區可以安裝引導裝載程式。其餘部分被分成塊組(block group),示意圖如下:

塊組中的每一塊包含下列資訊之一:

1) 超級塊(super block):記錄檔案系統的整體資訊,包括inode/block的總量、使用量、剩餘量,以及檔案系統的格式和相關資訊等。

2) 組描述符(group description):描述自己塊組內部的資訊,說明每個塊組開始與結束的block號碼,以及說明每個區段(super block, bit map, inode map, data block)分別位於那乙個block號碼之間。

3) 資料塊點陣圖(block bitmao): 記錄資料塊的使用情況,包括那些資料塊可用,哪些資料塊不可用。

4) 索引點位圖(inode bitmap): 與資料塊點陣圖相似,記錄哪些inode可用,哪些inode不可用。

5) 索引點節點表(inode table): 記錄檔案的屬性、許可權以及該檔案實際資料是放置在那個block中,每個inode的大小均固定為128bytes。

6) 資料塊(data block):實際記錄檔案的內容,若檔案太大,會占用多個block。

2. 與目錄樹的關係

當在linux下的ext2檔案系統建立乙個新目錄時,ext2檔案系統會分配乙個inode與至少一塊block給該目錄。其中,inode記錄該目錄的相關許可權和屬性,並可記錄分配到的那塊block號碼,而block則是記錄這個目錄下的檔名與檔名占用的inode號碼資料。

當我們在linux下的ext2檔案系統中新建乙個檔案時,ext2會分配乙個inode與相對於該檔案大小的block數量給該檔案。例如,我的乙個block大小為4kb(block的大小和總量是在格式化的時候就固定了的,除非重新格式化),而我要建立乙個100kb的檔案,那麼linux將分配乙個inode與25個block來儲存檔案。

3.目錄樹的讀取

舉列說明系統讀取檔案的流程,例如我們讀取/etc/passwd這個檔案:

1) / 的inode:通過掛載點的資訊找到/dev/hdc2的inode號碼為2的根目錄inode,且inode有讀寫許可權

2) / 的block:經過上個步驟取得block的號碼,並找到該內容有etc/的inode號碼

3) etc/的inode:讀取etc/的inode號碼可知有r和x的許可權,因此可讀etc/的block內容

4) etc/的block:經上個步驟取得的block號碼,找到內容是passwd檔案的inode號碼

5) passwd的inode:從passwd的inode可知有讀的許可權,因此讀取passwd的內容

6) 將passwd的內容讀取出來

linux檔案系統 ext2檔案系統

如何快速高效的尋到在硬碟儲存的資料,於是檔案系統就誕生了。檔案系統是邏輯層面的,那麼檔案系統是如何管理 件層提供的磁碟空間的?現在,大部分檔案系統採用索引分配方案 優點 1.能夠保持好大部分檔案的區域性性 2.滿足檔案插入,刪除的高效 3.隨機讀寫不需要沿著指標前行 缺點1.會有較多的磁碟尋道次數 ...

ext2檔案系統

ext2磁碟結構 ext2分割槽和ext2分組的分布圖 下圖是借用其他部落格的 塊組中的每個塊包含的資訊 超級快 1個塊 描述該分割槽中的整個檔案系統的資訊,包括有多少個快組,每個快組有多少個塊,多少個索引節點等。組描述符塊 n塊 塊點陣圖 1塊 索引節點位圖 1塊 索引節點 n塊 資料塊 n塊 塊...

Linux學習(2) 檔案系統

檔案結構 1.倒轉的單根樹狀結構 2.區分大小寫 3.使用 分割 windows使用 4.根目錄為 當前工作目錄 使用 pwd 檢視 檔名稱 1.大小寫敏感 2.長度最大255字元 3.除了正斜線,都是有效字元 4.使用touch命令可以建立空白檔案或者更新檔案的時間 5.隱藏檔案以 開頭 列出目錄...