ext2 ext3與ext4的區別

2022-08-28 13:27:20 字數 3546 閱讀 3017

ext2與ext3

linux ext2/ext3檔案系統使用索引節點來記錄檔案資訊,作用像windows的檔案分配表。索引節點是乙個結構,它包含了乙個檔案的長度、建立及修改時間、許可權、所屬關係、磁碟中的位置等資訊。乙個檔案系統維護了乙個索引節點的陣列,每個檔案或目錄都與索引節點陣列中的唯一乙個元素對應。系統給每個索引節點分配了乙個號碼,也就是該節點在陣列中的索引號,稱為索引節點號。 linux檔案系統將檔案索引節點號和檔名同時儲存在目錄中。所以,目錄只是將檔案的名稱和它的索引節點號結合在一起的一張表,目錄中每一對檔名稱和索引節點號稱為乙個連線。 對於乙個檔案來說有唯一的索引節點號與之對應,對於乙個索引節點號,卻可以有多個檔名與之對應。因此,在磁碟上的同乙個檔案可以通過不同的路徑去訪問它。

linux之前預設情況下使用的檔案系統為ext2,ext2檔案系統的確高效穩定。但是,隨著linux系統在關鍵業務中的應用,linux檔案系統的弱點也漸漸顯露出來了:其中系統預設使用的ext2檔案系統是非日誌檔案系統。這在關鍵行業的應用是乙個致命的弱點。本文向各位介紹linux下使用ext3日誌檔案系統應用。

ext3檔案系統是直接從ext2檔案系統發展而來,目前ext3檔案系統已經非常穩定可靠。它完全相容ext2檔案系統。使用者可以平滑地過渡到乙個日誌功能健全的檔案系統中來。這實際上了也是ext3日誌檔案系統初始設計的初衷。

ext3日誌檔案系統的特點

1、高可用性

系統使用了ext3檔案系統後,即使在非正常關機後,系統也不需要檢查檔案系統。宕機發生後,恢復ext3檔案系統的時間只要數十秒鐘。

2、資料的完整性:

ext3檔案系統能夠極大地提高檔案系統的完整性,避免了意外宕機對檔案系統的破壞。在保證資料完整性方面,ext3檔案系統有2種模式可供選擇。其中之一就是「同時保持檔案系統及資料的一致性」模式。採用這種方式,你永遠不再會看到由於非正常關機而儲存在磁碟上的垃圾檔案。

3、檔案系統的速度:

儘管使用ext3檔案系統時,有時在儲存資料時可能要多次寫資料,但是,從總體上看來,ext3比ext2的效能還要好一些。這是因為ext3的日誌功能對磁碟的驅動器讀寫頭進行了優化。所以,檔案系統的讀寫效能較之ext2檔案系統並來說,效能並沒有降低。

4、資料轉換

由ext2檔案系統轉換成ext3檔案系統非常容易,只要簡單地鍵入兩條命令即可完成整個轉換過程,使用者不用花時間備份、恢復、格式化分割槽等。用乙個ext3檔案系統提供的小工具tune2fs,它可以將ext2檔案系統輕鬆轉換為ext3日誌檔案系統。另外,ext3檔案系統可以不經任何更改,而直接載入成為ext2檔案系統。

5、多種日誌模式

ext3有多種日誌模式,一種工作模式是對所有的檔案資料及metadata(定義檔案系統中資料的資料,即資料的資料)進行日誌記錄(data=journal模式);另一種工作模式則是只對metadata記錄日誌,而不對資料進行日誌記錄,也即所謂data=ordered或者data=writeback模式。系統管理人員可以根據系統的實際工作要求,在系統的工作速度與檔案資料的一致性之間作出選擇。

實際使用ext3檔案系統

建立新的ext3檔案系統,例如要把磁碟上的hda8分割槽格式化ext3檔案系統,並將日誌記錄在/dev/hda1分割槽,那麼操作過程如下:

[root@stationxx root]# mke2fs -j /dev/hda8

mke2fs 1.24a (02-sep-2001)

filesystem label=

os type: linux

block size=1024 (log=0)

.. .. ..

creating journal (8192 blocks): done

writing superblocks and filesystem accounting information: done

this filesystem will be automatically checked every 30 mounts or

180 days, whichever comes first. use tune2fs -c or -i to override.

在建立新的檔案系統時,可以看到,ext3檔案系統執行自動檢測的時間為180天或每第31次被mount時,實際上這個引數可以根據需要隨意調節。

以下將新的檔案系統mount到主分割槽/data目錄下:

[root@stionxx root]# mount -t ext3 /dev/hda8 /data

說明:以上將已格式化為ext3檔案系統的/dev/hda8分割槽載入到/data目錄下。

ext3 基於ext2 的**,它的磁碟格式和 ext2 的相同;這意味著,乙個乾淨卸裝的 ext3 檔案系統可以作為 ext2 檔案系統重新掛裝。ext3檔案系統仍然能被載入成ext2檔案系統來使用,你可以把乙個檔案系統在ext3和ext2自由切換。這時在ext2檔案系統上的ext3日誌檔案仍然存在,只是ext2不能認出日誌而已。

以轉換檔案系統為例,將ext2檔案系統轉換為ext3檔案系統,命令如下:

[root@stationxx root]# tune2fs -j /dev/hda9

tune2fs 1.24a (02-sep-2001)

creating journal inode: done

this filesystem will be automatically checked every 31 mounts or

180 days, whichever comes first. use tune2fs -c or -i to override.

這樣,原來的ext2檔案系統就轉換成了ext3檔案系統。注意將ext2檔案系統轉換為ext3檔案系統時,不必要將分割槽缷載下來轉換。

轉換完成後,不要忘記將/etc/fstab檔案中所對應分割槽的檔案系統由原來的ext2更改為ext3。

ext3日誌的存放位置

可以將日誌放置在另外乙個儲存裝置上,例如存放到分割槽/dev/hda8。例如要在/dev/hda8上建立乙個ext3檔案系統,並將日誌存放在外部裝置/dev/hda2上,則執行以下命令:

[root @stationxx root]#mke2fs -j device=/dev/hda8 /dev/hda2

ext3檔案系統修復

新的e2fsprogs中的e2fsck支援ext3檔案系統。當乙個ext3檔案系統被破壞時,先解除安裝該裝置,在用e2fsck修復:

[root @stationxx root] # umount /dev/hda8

[root @stationxx root] #e2fsck -fy /dev/hda8

總而言之,ext3日誌檔案系統是目前linux系統由ext2檔案系統過度到日誌檔案系統最為簡單的一種選擇,實現方式也最為簡潔。由於是直接從ext2檔案系統發展而來,系統由ext2檔案系統過渡到ext3日誌檔案系統公升級過程平滑,可以最大限度地保證系統資料的安全性。目前linux系統要使用日誌檔案系統,最保險的方式就是選擇ext3檔案系統。

最新的ext4

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

ext3與ext4主要區別

很長一段時間以來,ext3是很多linux發行版預設的檔案系統,現在ext4已經發布,並且已經有發行版開始使用ext4作為預設的檔案系統了 其實最初的時候ext4是作為ext3的擴充套件,但是為了保證ext3的穩定性等原因,很多人反對直接對ext3進行擴充套件,所以單獨作為了ext4專案 ext3還...

Liinux 檔案系統EXT2,EXT3區別

概念 ext2 ext3 linux環境上的檔案系統。ext2 ext3檔案系統使用索引節點來記錄檔案資訊,作用像windows的檔案分配表。索引節點是乙個結構,它包含了乙個檔案的長度 建立及修改時間 許可權 所屬關係 磁碟中的位置等資訊。ext2 ext3的區別如下 1 ext2和ext3的格式完...

顯示 Ext2 Ext3 Ext4 結構資訊

要顯示乙個 ext2 ext3 ext4 資訊,可以使用 e2fsprogs 中的dumpe2fs或tune2fs l命令,例如 dumpe2fs dev sda1 或者tune2fs l dev sda1 dumpe2fs 會顯示 superblock 上的資訊和每個區塊組 block group...