Ext4檔案系統的特性和功能簡介

2021-12-29 16:33:11 字數 1584 閱讀 4177

linux kernel 自 2.6.28 開始正式支援新的檔案系統 ext4。 ext4 是 ext3 的改進版,修改了 ext3 中部分重要的資料結構,而不僅僅像 ext3 對 ext2 那樣,只是增加了乙個日誌功能而已。ext4 可以提供更佳的效能和可靠性,還有更為豐富的功能:

/. 與 ext3 相容。執行若干條命令,就能從 ext3 **遷移到 ext4,而無須重新格式化磁碟或重新安裝系統。原有 ext3 資料結構照樣保留,ext4 作用於新資料,當然,整個檔案系統因此也就獲得了 ext4 所支援的更大容量。

/. 更大的檔案系統和更大的檔案。較之 ext3 目前所支援的最大 16tb 檔案系統和最大 2tb 檔案,ext4 分別支援 1eb(1,048,576tb, 1eb=1024pb, 1pb=1024tb)的檔案系統,以及 16tb 的檔案。

/. 無限數量的子目錄。ext3 目前只支援 32,000 個子目錄,而 ext4 支援無限數量的子目錄。

/. extents。ext3 採用間接塊對映,當操作大檔案時,效率極其低下。比如乙個 100mb 大小的檔案,在 ext3 中要建立 25,600 個資料塊(每個資料塊大小為 4kb)的對映表。而 ext4 引入了現代檔案系統中流行的 extents 概念,每個 extent 為一組連續的資料塊,上述檔案則表示為「該檔案資料儲存在接下來的 25,600 個資料塊中」,提高了不少效率。

/. 多塊分配。當 寫入資料到 ext3 檔案系統中時,ext3 的資料塊分配器每次只能分配乙個 4kb 的塊,寫乙個 100mb 檔案就要呼叫 25,600 次資料塊分配器,而 ext4 的多塊分配器「multiblock allocator」(mballoc) 支援一次呼叫分配多個資料塊。

/. 延遲分配。ext3 的資料塊分配策略是盡快分配,而 ext4 和其它現代檔案作業系統的策略是盡可能地延遲分配,直到檔案在 cache 中寫完才開始分配資料塊並寫入磁碟,這樣就能優化整個檔案的資料塊分配,與前兩種特性搭配起來可以顯著提公升效能。

/. 快速 fsck。以前執行 fsck 第一步就會很慢,因為它要檢查所有的 inode,現在 ext4 給每個組的 inode 表中都新增了乙份未使用 inode 的列表,今後 fsck ext4 檔案系統就可以跳過它們而只去檢查那些在用的 inode 了。

/. 日誌校驗。日誌是最常用的部分,也極易導致磁碟硬體故障,而從損壞的日誌中恢復資料會導致更多的資料損壞。ext4 的日誌校驗功能可以很方便地判斷日誌資料是否損壞,而且它將 ext3 的兩階段日誌機制合併成乙個階段,在增加安全性的同時提高了效能。

/. 「無日誌」(no journaling)模式。日誌總歸有一些開銷,ext4 允許關閉日誌,以便某些有特殊需求的使用者可以藉此提公升效能。

/. **碎片整理。儘管延遲分配、多塊分配和 extents 能有效減少檔案系統碎片,但碎片還是不可避免會產生。ext4 支援**碎片整理,並將提供 e4defrag 工具進行個別檔案或整個檔案系統的碎片整理。

ext4檔案系統新特性

ext4是linux 檔案系統 的 一次革命。在很多方面,ext4相對於ext3的進步要遠超過ext3相對於ext2的進步。ext3相對於 ext2的改進主要在於日誌方面,但是ext4相對於ext3的的改進是更深層次的,是檔案系統資料結構方面的優化。乙個高效的 優秀的 可靠的和極具特 點的檔案系統就...

ext4檔案系統綜述

從本篇部落格起,我們開始研究現代檔案系統ext4,說其現代是因為其相比傳統檔案系統,有著更現代化的設計。這些先進的特性體現在本文所要敘述的以下方面。ext4是linux檔案系統的一次革命。在很多方面,ext4相對於ext3的進步要遠超過ext3相對於ext2的進步。ext3相對於 ext2的改進主要...

剖析ext4檔案系統

簡介 第 4 個擴充套件檔案系統,即 ext4 是下一代的日誌檔案系統,它與上一代檔案系統 ext3 是向後相容的。儘管 ext4 目前還不是標準檔案系統,但它將成為大部分下一代 linux 發行版的預設檔案系統。了解 ext4,以及它為什麼將成為您最喜歡的新檔案系統。linux 核心的每次發行都伴...