搜尋
首頁系統教程Linux在Linux環境下如何使用XFS檔案系統

在Linux環境下如何使用XFS檔案系統

Jan 07, 2024 pm 01:42 PM
linuxlinux教程紅帽linux系統linux指令linux認證紅帽linuxlinux視頻

導讀 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檔案系統的使用 下載與編譯核心

#下載對應版本的核心補丁,解壓縮補丁軟體包,對系統核心打補丁

下載網址: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 
<p>修補工作完成後,下一步要進行的工作是編譯核心,將XFS編譯進Linux核心可中。 </p>
<p>先執行以下指令,選擇核心支援XFS檔案系統:</p>
<pre class="brush:php;toolbar:false">#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及單處理器的機器使用。

建立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
載入XFS檔案系統#
#mount –t xfs /dev/sda6 /xfs

##其中/xfs是主分割區/下的一個目錄。

最后,为了让系统启动后就自动加载,应该更改/etc/fstab,这样系统启动后就会自动加载xfs分区而不必每次都手工加载。

要说明的一点是目前的xfs由于受linux内存页限制,在x86版本中,只能实现文件系统的块尺寸为4K。另外,XFS文件系统可以不同的方式 mount,即允许文件系统以读方式加载,也允许以读写方式加载。这是因为xfs文件系统用作根文件系统时,为了安全要以只读方式加载。

文件系统的迁移

要使得系统中的其它分区使用XFS文件系统,还有一步是迁移文件系统。建议在迁移文件系统时,首先将磁盘上的数据、文件先备份,以免发生不可挽回的损失,在进行文件系统转换之间,最好能将整个系统进行完全备份。这一步有很多种方法,本文仅就笔者的迁移方法加以描述。各位可以按照自己习惯的方式去完成

如果你想得到一个纯的xfs系统(系统的所有文件系统均采用XFS文件系统)话,还得将根文件系统也格式化为xfs文件系统。这实际上是比较繁杂的一步。因为根文件系统不能被umount,所以,必须首先创建一个分区,其文件系统为ext2文件系统,然后将目前的根分区上的所有文件与目录,原原本本地复制到这一个分区,然后更改/etc/fstab文件,替换原来的根分区。

方法如下:

$ mkfs -t ext2 /dev/hda4

$ mkdir /mnt/temp

$ mount -t ext2 /dev/hda4 /mnt/temp

$ cd /

$ tar lcvf - .|(cd /mnt/temp; tar xpvf - )

以上操作是将根分区上的所有文件打包,复制到新建立的分区。当然,你也可以直接使用以下命令复制文件。

# cp –dpR / /mnt/temp

接着,将下次启动的根分区更改到/dev/hda4分区,更改/etc/fstab文件及/etc/lilo.conf ,然后,运行 lilo.

重新启动后,新的根分区就已经为/dev/hda4。

接下来,创建一个xfs文件系统的分区:

$ mkfs -t xfs /dev/hda2

加载此分区,采用两样的方法,将根分区的内容复制到此分区

$ mount -t xfs /dev/hda2 /mnt/temp

在根分区下,运行

$ cd /

$ tar lcvf - .|(cd /mnt/temp; tar xpvf - )

再次更改/etc/fstab、/etc/lilo.conf,用新建的xfs分区替换原来的ext2主分区。如下所示:

/dev/hda2 / xfs defaults 1 1

将新建的xfs分区用作根分区,保存以上设置。再次检查配置文件内容,确认无误后再重新启动系统。如果你的设置全部正确,那么系统成功启动后,你就拥有一个纯XFS文件系统的系统了。

以上是在Linux環境下如何使用XFS檔案系統的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:Linux就该这么学。如有侵權,請聯絡admin@php.cn刪除
Linux軟件的未來:Flatpak和Snap會替換本機桌面應用程序嗎?Linux軟件的未來:Flatpak和Snap會替換本機桌面應用程序嗎?Apr 25, 2025 am 09:10 AM

多年來,Linux軟件分佈依賴於DEB和RPM等本地格式,並深深地根深蒂固。 但是,Flatpak和Snap已經出現,有望成為應用程序包裝的通用方法。 本文考試

Linux和Windows處理設備驅動程序的區別有什麼區別?Linux和Windows處理設備驅動程序的區別有什麼區別?Apr 25, 2025 am 12:13 AM

Linux和Windows在處理設備驅動程序上的差異主要體現在驅動管理的靈活性和開發環境上。 1.Linux採用模塊化設計,驅動可以動態加載和卸載,開發者需深入理解內核機制。 2.Windows依賴微軟生態,驅動需通過WDK開發並簽名認證,開發相對複雜但保證了系統的穩定性和安全性。

比較和對比Linux和Windows的安全模型。比較和對比Linux和Windows的安全模型。Apr 24, 2025 am 12:03 AM

Linux和Windows的安全模型各有優勢。 Linux提供靈活性和可定制性,通過用戶權限、文件系統權限和SELinux/AppArmor實現安全。 Windows則注重用戶友好性,依賴WindowsDefender、UAC、防火牆和BitLocker保障安全。

Linux和Windows之間的硬件兼容性有何不同?Linux和Windows之間的硬件兼容性有何不同?Apr 23, 2025 am 12:15 AM

Linux和Windows在硬件兼容性上不同:Windows有廣泛的驅動程序支持,Linux依賴社區和廠商。解決Linux兼容性問題可通過手動編譯驅動,如克隆RTL8188EU驅動倉庫、編譯和安裝;Windows用戶需管理驅動程序以優化性能。

Linux和Windows之間虛擬化支持有哪些差異?Linux和Windows之間虛擬化支持有哪些差異?Apr 22, 2025 pm 06:09 PM

Linux和Windows在虛擬化支持上的主要區別在於:1)Linux提供KVM和Xen,性能和靈活性突出,適合高定制環境;2)Windows通過Hyper-V支持虛擬化,界面友好,與Microsoft生態系統緊密集成,適合依賴Microsoft軟件的企業。

Linux系統管理員的主要任務是什麼?Linux系統管理員的主要任務是什麼?Apr 19, 2025 am 12:23 AM

Linux系統管理員的主要任務包括系統監控與性能調優、用戶管理、軟件包管理、安全管理與備份、故障排查與解決、性能優化與最佳實踐。 1.使用top、htop等工具監控系統性能,並進行調優。 2.通過useradd等命令管理用戶賬戶和權限。 3.利用apt、yum管理軟件包,確保系統更新和安全。 4.配置防火牆、監控日誌、進行數據備份以確保系統安全。 5.通過日誌分析和工具使用進行故障排查和解決。 6.優化內核參數和應用配置,遵循最佳實踐提升系統性能和穩定性。

很難學習Linux嗎?很難學習Linux嗎?Apr 18, 2025 am 12:23 AM

學習Linux並不難。 1.Linux是一個開源操作系統,基於Unix,廣泛應用於服務器、嵌入式系統和個人電腦。 2.理解文件系統和權限管理是關鍵,文件系統是層次化的,權限包括讀、寫和執行。 3.包管理系統如apt和dnf使得軟件管理方便。 4.進程管理通過ps和top命令實現。 5.從基本命令如mkdir、cd、touch和nano開始學習,再嘗試高級用法如shell腳本和文本處理。 6.常見錯誤如權限問題可以通過sudo和chmod解決。 7.性能優化建議包括使用htop監控資源、清理不必要文件和使用sy

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中