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
必須在初始安裝中指定該選項,配額才能生效。
配額軟體包中的標準工具可以執行基本的配額管理任務(諸如setquota和repquota之類的工具),而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相比ext3和ext4的通用命令
任務
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.2。ext4和xfs的通用工具
任務
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,引用了...