歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Linux中XFS文件系統的使用及創建方法

Linux中XFS文件系統的使用及創建方法

日期:2017/2/28 17:51:43   编辑:Linux教程

XfS文件系統是SGI開發的高級日志文件系統,XFS極具伸縮性,非常健壯。所幸的是SGI將其移植到了Linux系統中。在Linux環境下。目前版本可用的最新XFS文件系統的為1.2版本,可以很好地工作在2.4核心下。

一、XFS文件系統簡介

主要特性包括以下幾點:

數據完全性

采用XFS文件系統,當意想不到的宕機發生後,首先,由於文件系統開啟了日志功能,所以你磁盤上的文件不再會意外宕機而遭到破壞了。不論目前文件系統上存儲的文件與數據有多少,文件系統都可以根據所記錄的日志在很短的時間內迅速恢復磁盤文件內容。

傳輸特性

XFS文件系統采用優化算法,日志記錄對整體文件操作影響非常小。XFS查詢與分配存儲空間非常快。XFS文件系統能連續提供快速的反應時間。筆者曾經對XFS、JFS、Ext3、ReiserFS文件系統進行過測試,XFS文件文件系統的性能表現相當出眾。

可擴展性

XFS 是一個全64-bit的文件系統,它可以支持上百萬T字節的存儲空間。對特大文件及小尺寸文件的支持都表現出眾,支持特大數量的目錄。最大可支持的文件大小為263 = 9 x 1018 = 9 exabytes,最大文件系統尺寸為18 exabytes。

XFS使用高的表結構(B+樹),保證了文件系統可以快速搜索與快速空間分配。XFS能夠持續提供高速操作,文件系統的性能不受目錄中目錄及文件數量的限制。

傳輸帶寬

XFS 能以接近裸設備I/O的性能存儲數據。在單個文件系統的測試中,其吞吐量最高可達7GB每秒,對單個文件的讀寫操作,其吞吐量可達4GB每秒。

二、XFS文件系統的使用

1.下載與編譯內核

下載相應版本的內核補丁,解壓補丁軟件包,對系統核心打補丁。

下載地址:ftp://oss.sgi.com/projects/xfs/d ... .4.18-all.patch.bz2

對核心打補丁,下載解壓後,得到一個文件:xfs-1.1-2.4.18-all.patch文件。

對核心進行修補如下:

# cd /usr/src/linux 
# patch -p1 < /path/to/xfs-1.1-2.4.18-all.patch

修補工作完成後,下一步要進行的工作是編譯核心,將XFS編譯進Linux核心可中。

首先運行以下命令,選擇核心支持XFS文件系統:

#make menuconfig

在“文件系統“菜單中選擇:

<*> SGI XFS filesystem support ##說明:將XFS文件系統的支持編譯進核心或 SGI XFS。 filesystem support ##說明:以動態加載模塊的方式支持XFS文件系統。

另外還有兩個選擇:

Enable XFS DMAPI ##說明:對磁盤管理的API,存儲管理應用程序使用。

Enable XFS Quota ##說明:支持配合Quota對用戶使用磁盤空間大小管理。

完成以上工作後,退出並保存核心選擇配置。之後,然後編譯內核,安裝核心:

        #make bzImage 

        #make module 

        #make module_install 

        #make install

如果你對以上復雜繁瑣的工作沒有耐心或沒有把握,那麼可以直接從SGI的站點上下載已經打好補丁的核心,其版本為2.4.18。它是一個rpm軟件包,你只要簡單地安裝即可。SGI提交的核心有兩種,分別供smp及單處理器的機器使用。

2.創建XFS文件系統

完成對核心的編譯後,還應下載與之配套的XFSprogs工具軟件包,也即mkfs.xfs工具。不然我們無法完成對分區的格式化:即無法將一個分區格式化成XFS文件系統的格式。要下載的軟件包名稱:xfsprogs-2.0.3。

將所下載的XFSProgs工具解壓,安裝,mkfs.xfs自動安裝在/sbin目錄下。

        #tar –xvf xfsprogs-2.0.3.src.tar.gz 

        #cd xfsprogs-2.0.3src 

        #./configure 

        #make 

        #make install

使用mkfs.xfs格式化磁盤為xfs文件系統,方法如下:

# /sbin/mkfs.xfs /dev/sda6 #說明:將分區格式化為xfs文件系統,以下為顯示內容:

        meta-data=/dev/sda6 isize=256 agcount=8, agsize=128017 blks 

        data = bsize=4096 blocks=1024135, imaxpct=25 

        = sunit=0 swidth=0 blks, unwritten=0 

        naming =version 2 bsize=4096 

        log =internal log bsize=4096 blocks=1200 

        realtime =none extsz=65536 blocks=0, rtextents=0

格式化磁盤時,如果mkfs.xfs提示你分區原本已被格式化為其它文件系統,可以使用參數 –f 強行格式化:

#/sbin/mkfs.xfs –f /dev/sda6

3.加載XFS文件系統

#mount –t xfs /dev/sda6 /xfs ##其中/xfs是主分區/下的一個目錄。

最後,為了讓系統啟動後就自動加載,應該更改/etc/fstab,這樣系統啟動後就會自動加載xfs分區而不必每次都手工加載。

要說明的一點是目前的xfs由於受Linux內存頁限制,在x86版本中,只能實現文件系統的塊尺寸為4K。另外,XFS文件系統可以不同的方式 mount,即允許文件系統以讀方式加載,也允許以讀寫方式加載。這是因為xfs文件系統用作根文件系統時,為了安全要以只讀方式加載。

Copyright © Linux教程網 All Rights Reserved