從EXT4遷移到XFS

2021-09-27 07:55:35 字數 4506 閱讀 6478

3.10。從ext4遷移到xfs

從red hat enterprise linux 7.0

開始,xfs

是預設的檔案系統,而不是

ext4

。本節重點介紹使用或管理

xfs檔案系統時的區別。 在

red hat enterprise linux 7

中仍完全支援

ext4

檔案系統,並且可以在安裝時選擇。雖然可以從

ext4

遷移到xfs

,但這不是必需的。

3.10.1

。ext3 / 4

和xfs

之間的區別

檔案系統維修

ext3 / 4 

e2fsck

在引導時在使用者空間中執行,以根據需要恢復日誌。相比之下,

xfs在安裝時在核心空間中執行日誌恢復。提供了乙個

fsck.xfs

shell

指令碼,但是它不執行任何有用的操作,因為它僅在其中滿足初始化指令碼要求。

當請求xfs檔案系統修復或檢查時,請使用

xfs_repair

命令。使用該

-n選項進行唯讀檢查。 該

xfs_repair

命令在帶有髒日誌的檔案系統上不起作用。要修復此類檔案系統

mount

,unmount

必須首先執行以重播日誌。如果日誌已損壞並且無法重播,則

-l可以使用該選項將日誌中的內容清零。 有關

xfs檔案系統的檔案系統修復的更多資訊,請參見

第12.2.2

節「 xfs」

元資料錯誤行為

遇到元資料錯誤時,

ext3 / 4

檔案系統具有可配置的行為,預設情況下只是繼續。當

xfs遇到無法恢復的元資料錯誤時,它將關閉檔案系統並返回

efscorrupted

錯誤。系統日誌將包含遇到的錯誤的詳細資訊,並

xfs_repair

在必要時建議執行。

配額

xfs配額不是可重新安裝的選項。

-o quota

必須在初始安裝中指定該選項,配額才能生效。

配額軟體包中的標準工具可以執行基本的配額管理任務(諸如setquotarepquota類的工具),而xfs_quota工具可以用於特定於

xfs的功能,例如

project quota

管理。

該quotacheck

命令對xfs

檔案系統無效。首次啟用配額核算時,

xfs在

quotacheck

內部自動執行。由於

xfs配額元資料是一流的日記式元資料物件,因此配額系統將始終保持一致,直到手動關閉配額為止。

調整檔案系統大小

xfs檔案系統沒有實用程式來縮小檔案系統。

xfs檔案系統可以通過

xfs_growfs

索引節點編號

對於具有

256位元組索引節點的大於

1 tb

的檔案系統,或具有

512位元組索引節點的大於

2 tb

的檔案系統,

xfs索引節點號可能會超過

2 ^ 32

。如此大的索引節點數會導致32位

stat

呼叫失敗,並返回

eoverflow

返回值。當使用預設的

red hat enterprise linux 7

配置時,可能會發生所描述的問題:非帶四個分配組的條帶化。定製配置(例如檔案系統副檔名或更改

xfs檔案系統引數)可能會導致不同的行為。

應用程式通常可以正確處理此類較大的

inode

編號。如果需要,請使用

-o inode32

引數掛載

xfs檔案系統,以將

inode

號強制設定為

2 ^ 32

以下。請注意,使用

inode32

不會影響已經分配了

64位數字的

inode。

重要

千萬不能使用

inode32

,除非它是由乙個特定的環境所需的選項。該

inode32

選項更改分配行為。因此,如果沒有空間可用於在較低磁碟塊中分配索引節點,則可能會發生

enospc

錯誤。

投機預分配

在寫入檔案時,

xfs使用推測性預分配來分配

eof之後的塊。這樣可以避免由於

nfs伺服器上的併發流寫入工作負載而導致的檔案碎片。預設情況下,此預分配隨著檔案的大小而增加,並且在

「 du」

輸出中顯而易見。如果具有推測性預分配的檔案在五分鐘內沒有被汙染,則該預分配將被丟棄。如果在該時間之前將索引節點從快取中迴圈出,那麼當**索引節點時,預分配將被丟棄。

如果由於推測性預分配而導致

enospc

過早出現問題,則可以使用

mount

選項指定固定的預分配量。

-o allocsize=amount

碎片相關工具

由於啟發式和行為(例如延遲分配和推測性預分配),碎片很少是

xfs檔案系統上的重要問題。但是,存在用於測量檔案系統碎片以及對檔案系統進行碎片整理的工具。不鼓勵使用它們。 該

xfs_db frag

命令嘗試將所有文

​​件系統分配提取為單個碎片數,以百分比表示。命令的輸出需要大量的專業知識才能理解其含義。例如,碎片係數為

75%意味著每個檔案平均只有

4個擴充套件資料塊。因此,

xfs_db

的frag

的輸出不被認為是有用的,因此建議對任何碎片問題進行更仔細的分析。

警告

該xfs_fsr

命令可用於對單個檔案或檔案系統上的所有檔案進行碎片整理。尤其不建議使用後者,因為它可能會破壞檔案的區域性性並可能碎片化可用空間。 與

xfs相比,與

ext3

和ext4

一起使用的命令

下表將與

ext3

和ext4

一起使用的常見命令與特定於

xfs的命令進行了比較。

3.1。與xfs相比ext3ext4的通用命令

任務

ext3 / 4

xfs

建立乙個檔案系統

mkfs.ext4 要麼 mkfs.ext3

mkfs.xfs

檔案系統檢查

e2fsck

xfs_repair

調整檔案系統大小

resize2fs

xfs_growfs

儲存檔案系統的映像

e2image

xfs_metadump 和 xfs_mdrestore

標記或調整檔案系統

tune2fs

xfs_admin

備份檔案系統

dump 和 restore

xfsdump 和 xfsrestore

下表列出了也可以在

xfs檔案系統上執行的通用工具,但是

xfs版本具有更特定的功能,因此建議使用。

3.2ext4xfs的通用工具

任務

ext4

xfs

配額quota

xfs_quota

檔案對映

filefrag

xfs_bmap

有關許多列出的

xfs命令的更多資訊,請參見第3

章xfs

檔案系統

。您也可以查閱列出的

xfs管理工具的手冊頁以獲取更多資訊。

ext4和xfs檔案系統的擴容和收縮

根檔案系統在 dev volgroup lv root 邏輯卷上,檔案系統型別為ext4,大小為10g,現在要將其擴容成20g。1 調整分割槽型別為8e 調整分割槽型別為lvm,也就是8e型別 fdisk dev sdb 選定分割槽後使用 t 選項,然後選擇8e型別 通知核心重讀分割槽表 partx...

Ext4使用總結(四)Ext4跨命名空間 引用

呼叫端ext的載入配置 ext.loader.setconfig 在公用的命名域內,可以做action,event,logic等的處理,如下圖 在plugin中的controller資料夾中的commoncontroller中,可以定義如下的頁面引用 refs displayitem,引用了不同命名...

ext4使用總結(四)Ext4跨命名空間 引用

呼叫端ext的載入配置 ext.loader.setconfig 在公用的命名域內,可以做action,event,logic等的處理,如下圖 img 在plugin中的controller資料夾中的commoncontroller中,可以定義如下的頁面引用 refs displayitem,引用了...