|
JFS是IBM公司為linux系統(tǒng)開發(fā)的一個日志文件系統(tǒng)。從IBM的實力及它對Linux的態(tài)度來看,JFS應(yīng)該是未來日志文件系統(tǒng)中最具實力的一個文件系統(tǒng)。
JFS提供了基于日志的字節(jié)級文件系統(tǒng),該文件系統(tǒng)是為面向事務(wù)的高性能系統(tǒng)而開發(fā)的。JFS 能夠在幾秒或幾 分鐘內(nèi)就把文件系統(tǒng)恢復(fù)到一致狀態(tài)。JFS能夠保證數(shù)據(jù)在任何意外宕機的情況下,不會造成磁盤數(shù)據(jù)的丟失與損壞。 一、JFS文件系統(tǒng)特點 1.存儲空間更大 JFS 支持的最小文件系統(tǒng)是 16M 字節(jié)。最大文件系統(tǒng)的大小為 512 萬億字節(jié)(TB)。JFS 是真正意義上的 64 位的文件系統(tǒng)。所有 JFS 文件系統(tǒng)結(jié)構(gòu)化字段都是 64 位大小。 2.動態(tài)磁盤 inode 分配 JFS 按需為磁盤 inode 動態(tài)地分配空間,釋放不再需要的空間。這種方式避開了在文件系統(tǒng)創(chuàng)建期間,為磁盤 inode 保留固定數(shù)量空間的傳統(tǒng)方法。用戶不需要考慮文件系統(tǒng)包含的文件和目錄最大數(shù)目。 3.基于盤區(qū)的尋址結(jié)構(gòu) JFS 使用基于盤區(qū)的尋址結(jié)構(gòu),JFS 分配嘗試通過分配最小數(shù)量的盤區(qū)策略,而使每個盤區(qū)盡可能大。這有利于大的 I/O 傳送,磁盤讀寫性能所有提高。 4.塊尺寸可變 JFS 支持 512、1024、2048 和 4096 字節(jié)的塊尺寸,允許用戶根據(jù)應(yīng)用環(huán)境優(yōu)化空間利用率。較小的塊尺寸減少有利于內(nèi)部存儲碎片的數(shù)量,提高空間利用率。系統(tǒng)缺省塊尺寸為 4096 字節(jié)。
二、使用JFS文件系統(tǒng)
1.編譯內(nèi)核以支持JFS文件系統(tǒng) 首先下載最新的2.4.x 核心,下載地址ftp://ftp.kernel.org/。然后下載JFS系統(tǒng)軟件包:http://www-124.ibm.com/developerworks/oss/jfs/,名稱為:jfs-x.y.z-patch.tar.gz。 將下載文件存放在/usr/src目錄中。 在/usr/src/上當(dāng)目錄下解開jfs的軟件包 # tar –zxvf jfs-2.4-1.0.4.tar.gz 得到四個文件: jfs-2.4.common-v1.0.4-patch 其中,jfs-2.4.common-v1.0.4-patch文件用于所有的2.4核心,jfs-2.4.0-v1.0.4-patch用于2.4.0-2.4.2。jfs-2.4.5-v1.0.4-patch可用于核心2.4.5及2.4.6。 注意仔細閱讀README文件,不要用錯了patch文件 接著是為核心打補?。? # patch –p1 < jfs-2.4.5-v1.0.4-patch 打補丁工作完成。 最后運行 ?。ake menuconfig 將新的文件系統(tǒng)加入了核心編譯配置文件中,要進行以下內(nèi)核配置: 使用make menuconfig 在菜單"Code maturity level options"中,選擇"Prompt for development and/or incomplete code/drivers."選項。然后,進入文件系統(tǒng)菜單"File systems",選擇"JFS filesystem support."選項。配置核心,使核心支持JFS文件系統(tǒng)。配置核心的其它選項。
<*> JFS filesystem support
##將JFS文件系統(tǒng)的支持編譯入內(nèi)核,也可以將其編譯成模塊加載方式,見以下選擇: <M> JFS filesystem support 筆者建議將JFS文件系統(tǒng)支持直接編譯進內(nèi)核,這有利于提高系統(tǒng)性能。 然后編譯核心: #make dep 最后,編輯 /etc/lilo.conf 文件,加入新內(nèi)核條目,以便使用新的內(nèi)核引導(dǎo)系統(tǒng)。如下所示,在 lilo.conf文件中加入以下幾行內(nèi)容: image=/boot/vmlinuz-2.4.5-jfs 然后運行l(wèi)ilo,使更改生效。 #lilo 三、創(chuàng)建JFS文件系統(tǒng) 1.查看系統(tǒng)對JFS文件系統(tǒng)的支持 如果新的內(nèi)核正確啟動,這說明核心已支持JFS文件系統(tǒng)了。查看系統(tǒng)進程,可以看到以下進程: #lsmod 如果你看到了以上這幾個進程,這表明系統(tǒng)核心已支持JFS文件系統(tǒng)。 另外,在/proc/fs/jfs 目錄下應(yīng)該還有三個文件: jfsFYI
logmgr TxAnchor 2.下載編譯JFS文件系統(tǒng)工具
為了使用JFS文件系統(tǒng),我們還需要創(chuàng)建文件系統(tǒng)的工具,到IBM的JFS網(wǎng)站下載相應(yīng)工具jfsutils-1.0.7.tar.gz軟件包。 下載地址:http://oss.software.ibm.com/developer/opensource/jfs/project/pub/jfsutils-1.0.7.tar.gz 編譯安裝過程如下: #tar –zxvf jfsutils-1.0.7.tar.gz 安裝完成后,在/usr/sbin中就多出一個 可執(zhí)行文件mkfs.jfs,我們就用它將分區(qū)格式化成jfs文件系統(tǒng)。 3.創(chuàng)建JFS文件系統(tǒng) 以下開始創(chuàng)建一個JFS文件系統(tǒng), 將hda6分區(qū)格式化成JFS文件系統(tǒng),以下為格式化時顯示的內(nèi)容: #mkfs -t jfs /dev/hda6 運行完成后,JFS文件系統(tǒng)已經(jīng)在hda6分區(qū)創(chuàng)建完成了。 4.加載JFS文件系統(tǒng) 首先,創(chuàng)建一個目錄jfs,以便將JFS文件系統(tǒng)mount到其上: #mkdir jfs 將新的分區(qū)mount到j(luò)fs目錄下: #mount –t jfs /dev/hda6 /jfs 這樣,新的文件系統(tǒng)就加載到/jfs目錄下了?,F(xiàn)在可以使用新的文件系統(tǒng)了。 四、使用JFS文件系統(tǒng) 1.普通分區(qū)使用JFS文件系統(tǒng) Linux內(nèi)核支持了JFS文件系統(tǒng)后,可以將磁盤所有分區(qū)均格式化為JFS文件系統(tǒng)。通常情況下,建議/usr,/usr/sbin等分區(qū)采用非日志文件系統(tǒng),而在那些對讀寫要求頻繁的分區(qū)上使用JFS文件系統(tǒng)。這有利于提高系統(tǒng)性能。
2.主引導(dǎo)區(qū)使用JFS文件系統(tǒng)
主分區(qū)為linux的啟動分區(qū),其中存放了系統(tǒng)啟動所需的基本文件。以下開始將JFS文件系統(tǒng)用于主分區(qū),首先備份主分區(qū)上的所有常用文件目錄: #cd / 在使用JFS文件系統(tǒng)啟動之前,還應(yīng)該更改/etc/fstab文件,將相應(yīng)的分區(qū)用作根分區(qū)。如下所示:原來的根分區(qū)為: LABEL=/ / ext2 defaults 1 1 應(yīng)該更改為: /dev/hda6 / jfs defaults 1 1 然后,編譯/etc/lilo.conf文件,將主引導(dǎo)分區(qū)更改為/dev/hda6。置label為jfs,將缺省的啟動設(shè)置為jfs。 如下所示: 然后,運行l(wèi)ilo,完成。 最后,reboot 系統(tǒng),啟動之后,你就得到一個純jfs文件系統(tǒng)的linux環(huán)境了,剩下的事情就是將原來的主分區(qū)重新格式化成 jfs,然后再將其mount到主分區(qū)的某個目錄下就行了。
|
|
|