成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Ext4文件系統簡介:功能列表與遷移注意事項

運維 系統運維
ext4是Linux系統下的日志文件系統,是ext3文件系統的后繼版本。ext4開發的原因是因為ext3在引入新功能的時候遇到了一些問題,而歷經四年的開發,ext4文件系統現在已經準備好成為主流的Linux文件系統之一了。本文介紹ext4的功能以及遷移的注意事項。

Linux 支持幾個不同的文件系統。這些文件系統中,一些是專用的網絡文件系統或為其他操作系統開發的文件系統,但絕大部分還是用作 Linux 本地文件系統 — 您可以將 Linux 根(/)和系統目錄放在這種文件系統里。目前(2008年),這一類文件系統包括 ext2、ext3、ReiserFS、XFS 和 Journaled File System (JFS)。但是文件系統一直在不斷設計和開發中,新的文件系統也將陸續問世。

目前正在開發的最重要的 Linux 文件系統是 ext4 — 它是專門為 Linux 開發的原始的擴展文件系統(ext 或 extfs)的第四版。由于繼承了以前版本,ext4 在不久的將來很可能會成為一個重要的 Linux 標準文件系統(51CTO編輯注:本文撰寫于2008年,當時ext4尚處于試驗階段。截至到2010年6月,ext4目前已在多種發行版中被接受為默認文件系統之一,紅帽的RHEL 6也將采用ext4作為默認文件系統,可以說ext4技術現在已經成熟)。

Ext4 與 ext3 的對比

擴展文件系統(ext 或 extfs)第四版產生的原因是開發人員在 ext3 中并入了新的高級功能。但在實現的過程出現了幾個問題:

  • 一些新功能違背向后兼容性。
  • Ext3 代碼變得更加復雜并難以維護。
  • 這些更改使原本十分可靠的 ext3 變得不可靠。

由于這些原因,從 2006 年 6 月份開始,開發人員決定把 ext4 從 ext3 中分離出來進行獨立開發。Ext4 的開發工作從那時起開始進行,但大部分 Linux 用戶和管理員都不怎么注意這件事情。隨著 2.6.19 內核在 2006 年 11 月的發布,ext4 ***次出現在主流內核里,但是它當時還處于試驗階段(現在還是),因此很多人都忽視了它。

由于還處于開發階段,從 2.6.24.4 內核開始,ext4 的功能列表就一直在變動。 Ext4 的當前和預期功能包括從 ext3 發展而來的功能,見下表:

◆大型文件系統

ext4文件系統可支持***1 Exbibyte的分區區與***16 Tebibyte的文件。

◆Extents

ext4引進了Extent文件存儲方式,以取代ext2/3使用的block mapping方式。Extent指的是一連串的連續物理block,這種方式可以增加大型文件的效率并減少分裂文件。ext4支持的單一Extent,在單一block為4KB的系統中***可達128MB[1]。單一inode中可存儲4筆Extent;超過四筆的Extent會以Htree方式被索引。

◆向下兼容

ext4向下兼容于ext3與ext2,因此可以將ext3和ext2的文件系統掛載為ext4分區區。由于某些ext4的新功能可以直接運用在ext3和ext2上,直接掛載即可提升少許效能。

ext3文件系統可以部分向上兼容于ext4(也就是說ext4文件系統可以被掛載為ext3分區區)。然而若是使用到Extent技術的ext4將無法被掛載為ext3。

◆預留空間

ext4允許對一文件預先保留軟盤空間。目前大多數文件系統做到這點的方式是直接產生一個填滿0的文件;ext4和XFS可以使用Linux內核中的一個新的系統調用“fallocate()”取得足夠的預留空間。

◆延遲取得空間

ext4使用一種稱為allocate-on-flush的方式,可以在數據將被寫入軟盤(sync)前才開始取得空間;大多數文件系統會在之前便取得需要的空間。這種方式可以增加效能并減少文件分散程度。

◆突破32000子目錄限制

ext3的一個目錄下最多只能有32000個子目錄。ext4的子目錄***可達64000,且使用“dir_nlink”功能后可以達到更高(雖然父目錄的link count會停止增加)。為了避免效能受到大量目錄的影響,ext4默認打開Htree(一種特殊的B-tree)索引功能。該功能已經實現于Linux內核2.6.23版。

◆日志校驗和

Ext4使用校驗和特性來提高文件系統可靠性,因為日志是磁盤上被讀取最頻繁的部分之一。這個特性還有一個好處就是可以安全地避免日志處理時磁盤I/O的等待,而稍微提高一些性能。日志校驗和的技術源于威斯康辛大學的一篇名為IRON File Systems的研究論文(見第六節 transaction checksums校驗和處理)[5]

◆在線磁盤整理

對于在線磁盤整理工具有許多草案,但是這些草案都沒有被包含在主流的內核當中。即使Ext4包含有許多避免磁盤碎片的技術,但是磁盤碎片還是難免會在一個長時間使用過的文件系統中存在。Ext4將會有一個具有磁盤整理功能的工具[來源請求].

◆快速文件系統檢查

Ext4將未使用的區塊標記在inode當中,這樣可以使諸如e2fsck之類的工具在磁盤檢查時將這些區塊完全跳過,而節約大量的文件系統檢查的時間。這個特性已經在2.6.24版本的Linux內核中實現。

(以上列表引用自維基百科)

功能列表的一些功能在實際使用中不具備與 ext3 的向后兼容性 — 即可能無法使用 ext3 文件系統類型的代碼掛載 ext4 文件系統。但是 ext4 保留了向前兼容性 — 您可以像掛載 ext4 文件系統一樣掛載 ext3 文件系統。

#p#

ext4 的使用對象

Ext4 最為顯著的改進是文件和文件系統的大小。因此,最可能需要 ext4 的用戶是那些磁盤空間大小為幾個 TB 的用戶。然而表 1 中的功能列表還展示了其他一些吸引人的改進。例如,如果您的目錄帶有大量子目錄,或者要求時間戳的精確度小于一秒,您可能希望嘗試使用 ext4。

從2.6.28版本開始,Linux Kernel開始正式支持新的文件系統EXT4。

把 ext3 遷移到 ext4

當系統在 ext4 的支持下啟動到內核時,您就可以使用新的文件系統了。為此,必須準備一個分區、獨立磁盤的冗余陣列(RAID)設備或其他存儲空間。然后就可以把它用作 ext4 文件系統并調整文件系統選項。

準備一個設備

如果希望從簡單的入手,可以使用新版或舊版的 e2fsprogs 包(即 mkfs.ext3 或 mkfs.ext4)附帶的工具格式化分區或其他設備。例如, mkfs.ext4 -j /dev/sda6 準備了 /dev/sda6 分區以供使用。使用 mkfs.ext4 可以產生一個文件系統,并激活了很多特定于 ext4 的功能。

目前,e2fsprogs 程序還沒有完全跟上內核文件系統的步伐。幸運的是,大部分內核驅動程序的功能都不需要對 mkfs.ext4 或其他實用程序進行特殊準備。當掛載文件系統時,將激活 ext4 功能。如果要在大媒體上使用 ext4, 就必須進行大膽的探索,確保記錄和報告所遇到的問題!

如果想把現有的 ext2 或 ext3 文件系統用作 ext4 文件系統,也不難實現。只需要按照隨后描述的方法掛載設備即可。然而如果使用某些新的功能,如 extent,該文件系統就不能和 ext2 或 ext3 的驅動程序一起使用。

使用 ext4

要把一個設備用作 ext4 文件系統,就必須使用 ext4dev 文件系統類型代碼掛載它(當 ext4 變得穩定時,文件系統類型代碼將變為 ext4)。例如,mount -t ext4dev /dev/sda6 /mnt/point 在 /mnt/point 中把 /dev/sda6 掛載為 ext4 文件系統。這些都是 ext4 的基本用法。注意,默認的掛載選項啟用了 extent,這會導致文件系統在作為 ext3 文件系統使用時變得不可用。如果您想嘗試一下 ext4 同時可以返回到 ext3,則使用 -o noextents 選項禁用 extent 功能。

一旦掛載以后,可以像其他任何文件系統一樣使用 ext4:復制文件、直接創建文件等等。 除了遇到 bug 或執行基準測試以外,您不會覺察到任何差別。

調整 ext4 性能選項

可以使用 tune2fs 程序調優 ext4 文件系統,與調優 ext2 或 ext3 文件系統的方式一樣。目前, tune2fs 不提供任何特定于 ext4 的選項,但是可以使用標準的 -O 參數設置 ext4 選項,例如 extent。

當把文件系統掛載為 ext4 時,內核開始使用特定于文件系統的功能,如 extent。這樣做的結果是不能再把文件系統掛載為 ext3 文件系統,至少會變得非常困難。

盡管把 ext3 文件系統掛載為 ext4 能夠實現特定于 ext4 的功能,掛載本身并不把舊數據結構轉換為新的格式。例如,現有文件保持塊狀方式分配, 而不是使用 extent 進行分配。因此,舊文件沒有從新功能獲得好處。然而,ext4 的開發人員已經考慮到這種情況并且提供了一種解決辦法:可以使用(正處于 試驗階段的)e4defrag 工具(隨后將介紹)轉換分配方式來利用 extent 功能。另一個新工具(尚不可用)將改變 inode 的大小,使它變為新的格式。

維護 ext4 文件系統

可以使用標準的 e2fsprogs 工具來維護 ext4 文件系統,例如使用 tune2fs 在創建文件系統之后調整選項,使用 fsck.ext4 執行文件系統檢查等等。這些程序在 ext4 與 ext3 之間沒有很大的差別。但是,如前面提到的一樣,ext4 包含一些能夠提升 fsck 性能的增強功能。

除了這些工具以外,有一個新工具特別值得注意:e4defrag。該程序能夠對已掛載的 ext4 文件系統進行磁盤碎片整理。這能夠提高性能,尤其是文件系統空間快要用完的時候。同時,這也有利于將 ext2/3 樣式的分配轉換為基于 extent 的 ext4 樣式的分配,因此能夠提高曾經作為 ext3 文件系統的文件系統的性能。不幸的是,e4defrag 還不是標準的 e2fsprogs 包的一部分,因此需要單獨下載。

【編輯推薦】

  1. 下一代Linux文件系統前瞻:是BTRFS還是ext4
  2. 當心: Ext4 可能造成數據丟失
  3. 猞猁的選擇:升級Ubuntu 9.10選擇Ext3還是Ext4
責任編輯:yangsai 來源: IBMDW
相關推薦

2012-05-21 09:48:58

Ext4

2010-12-17 09:37:13

ext4文件系統

2012-05-21 10:42:02

Ext4

2010-12-28 09:51:06

ext4文件系統

2012-07-27 09:44:41

RISC

2012-05-08 10:56:15

Linux

2011-06-27 10:17:15

EXT4 Btrfs

2017-11-23 09:30:01

Linux文件系統sudo命令

2009-11-30 09:46:45

Ubuntu文件系統選擇

2018-09-12 15:48:35

ext4Linux文件系統

2010-04-23 18:03:55

Aix 5.1

2025-03-28 09:44:17

2018-02-05 09:18:46

主機服務器安全

2009-08-04 08:28:10

2009-10-27 12:47:29

linux Ext3文

2011-01-06 09:57:31

Linux Kerne

2017-07-12 12:29:54

2009-03-25 08:32:33

Windows Ser微軟操作系統

2009-03-24 14:29:04

LinuxExt4數據丟失

2012-09-20 09:32:23

Ubuntu 12.1文件系統Ubuntu
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕乱码一区二区三区 | 欧美αv| 91一区二区 | 中文字幕一区二区三区在线观看 | 欧美一区二区三区国产 | 久久久久久www| 夜夜爽99久久国产综合精品女不卡 | 国产精品毛片在线 | 亚洲视频观看 | 亚洲成人免费视频在线 | 狠狠的干狠狠的操 | 视频精品一区 | av毛片免费| 国产一区二区三区四区三区四 | 成人片免费看 | 久久亚洲国产精品 | 久久国产精品一区二区三区 | 免费在线一区二区三区 | 日韩国产免费观看 | 日韩免费一级 | 国产一区二区三区 | 亚洲一区二区三区免费在线观看 | 成人av免费播放 | 精品二区 | 久久亚洲国产精品日日av夜夜 | 羞羞的视频在线 | 成年人免费网站 | 91网视频 | 精品综合久久久 | 蜜桃视频在线观看www社区 | 久久国产一区二区三区 | 日韩精品无码一区二区三区 | 色毛片 | 97精品超碰一区二区三区 | 97影院在线午夜 | 成人精品鲁一区一区二区 | 国产精品久久久久久吹潮日韩动画 | 欧美一区二区三区在线视频 | 自拍偷拍精品 | 久久成人一区 | 欧美日韩成人影院 |