Linux日志文件系統(tǒng)面面觀
這里/dev/xxx是希望創(chuàng)建ext3文件系統(tǒng)的新分區(qū)。-j參數(shù)表示創(chuàng)建ext3而不是ext2文件系統(tǒng)??梢允褂脜?shù)-Jsize=來指定希望的日志區(qū)大小(n單位為M)。
升級(jí)一個(gè)已有的ext2,使用tune2fs就可以了:
tune2fs -j /dev/xxx
你可以對(duì)正在加載的文件系統(tǒng)和沒有加載的文件系統(tǒng)進(jìn)行升級(jí)操作。如果當(dāng)前文件系統(tǒng)正在被加載,則文件。journal會(huì)在文件系統(tǒng)加載點(diǎn)的所在目錄被創(chuàng)建。如果是升級(jí)一個(gè)當(dāng)時(shí)沒有加載的文件系統(tǒng),則使用隱含的系統(tǒng)inode來記錄日志,這時(shí)候文件系統(tǒng)的所有內(nèi)容都會(huì)被保留不被破壞。
你可以使用下面的命令加載ext3文件系統(tǒng):
mount -t ext3 /dev/xxx /mount_dir
由于ext3實(shí)際上是帶有日志功能的ext2文件系統(tǒng) ,因此一個(gè)ext3文件系統(tǒng)可以以ext2的方式被加載。
安裝XFS文件系統(tǒng)
如果需要從技術(shù)方面了解XFS文件系統(tǒng),請(qǐng)參考SGI的XFS文件系統(tǒng)和SGI信息頁面。也可以參考FAQ.
XFS是一個(gè)SGI開發(fā)的linux環(huán)境下的日志文件系統(tǒng),它是一個(gè)成熟的技術(shù),最初是使用在IRIX系統(tǒng)上的文件系統(tǒng)。XFS遵循GPL版權(quán)申明。目前xfs文件系統(tǒng)最新版本是1.02.可以http://linux-xfs.sgi.com/projects/xfs/102_release.html從下載得到對(duì)內(nèi)核xfs文件系統(tǒng)支持補(bǔ)丁或者直接下載RPM包方式的內(nèi)核,下面我們就以補(bǔ)丁方式說明如何對(duì)2.4.14內(nèi)核使用xfs.首先下載如下內(nèi)容
patch-2.4.14-xfs-1.0.2.bz2
patch-2.4.14-xfs-1.0.2-kdb.bz2
拷貝Linux內(nèi)核linux-2.4.2.tar.bz2到 /usr/src目錄下,修改老的內(nèi)核目錄名,然后解壓新內(nèi)核:
mv linux linux-old
tar -Ixf inux-2.4.2.tar.bz2
拷貝每個(gè)每個(gè)補(bǔ)丁到內(nèi)核源碼目錄下(例如:/usr/src/linux),并打補(bǔ)丁:
zcat patch-2.4.14-xfs-1.0.2.bz2 | patch -p1
zcat patch-2.4.14-xfs-1.0.2-kdb.bz2 | patch -p1
然后配置內(nèi)核,打開文件系統(tǒng)部分的內(nèi)核選項(xiàng):XFS filesystem support (CONFIG_XFS_FS)和
age Buffer support (CONFIG_PAGE_BUF)。同時(shí)需要升級(jí)下面這些系統(tǒng)工具到下面或更高的版本:
modutils-2.4.0 autoconf-2.13 e2fsprogs-devel-1.18
安裝新內(nèi)核并重啟服務(wù)器。
然后下載xfs工具。這個(gè)軟件包包括下面的命令來處理文件系統(tǒng),使用下面的命令來安裝該軟件包::
tar -zxf xfsprogs-1.2.0.src.tar.gz
cd xfsprogs-1.2.0
make configure
make
make install
安裝這些命令以后,就可以創(chuàng)建新的XFS文件系統(tǒng):
mkfs -t xfs /dev/xxx
如果xxx是一個(gè)已經(jīng)存在的文件系統(tǒng),那么就需要使用-f參數(shù)來創(chuàng)建新分區(qū),但是記得這將會(huì)破壞該分區(qū)的所有數(shù)據(jù)。
mkfs -t xfs -f /dev/xxx
創(chuàng)建以后就可以使用基于下面的命令加載新文件系統(tǒng):
mount -t xfs /dev/xxx /mount_dir
安裝ReiserFS文件系統(tǒng)
如果希望更多地從技術(shù)方面了解reiserFS文件系統(tǒng),請(qǐng)參考NAMESYS和FAQ.
ReiserFS文件系統(tǒng)從2.4.1-pre4開始就是Linux內(nèi)核的正式支持的文件系統(tǒng)了。為了使用reiserFS文件系統(tǒng)那你首先需要在系統(tǒng)上安裝文件系統(tǒng)支持工具(如:創(chuàng)建ReiserFS文件系統(tǒng)的mkreiserfs工具)。最新的ReiserFS文件系統(tǒng)版本可以以補(bǔ)丁的方式添加到2.2.x或者2.4.x內(nèi)核中。這里我們以2.2.19為例:
第一步,首先下在內(nèi)核源碼,并下在ReiserFS文件系統(tǒng)的2.2.19補(bǔ)丁 ,目前補(bǔ)丁最新版本是linux-2.2.19-reiserfs-3.5.34-patch.bz2.同時(shí)應(yīng)該下載工具軟件包:reiserfsprogs-3.x.0j.tar.gz.
然后解壓內(nèi)核源碼和補(bǔ)丁包到/usr/src中:
tar -Ixf linux-2.2.19.tar.bz2
bzcat linux-2.2.19-reiserfs-3.5.34-patch.bz2 | patch -p0
編譯內(nèi)核支持reiserfs,安裝內(nèi)核。然后安裝文件系統(tǒng)工具軟件:
cd /usr/src/linux/fs/reiserfs/utils
make
make install
安裝新內(nèi)核并重新啟動(dòng)?,F(xiàn)在就可以創(chuàng)建新的reiserfs文件系統(tǒng),并加載:
mkreiserfs /dev/xxxx
mount -t reiserfs /dev/xxx /mount_dir
文件系統(tǒng)性能測(cè)試
測(cè)試環(huán)境使用的計(jì)算機(jī)環(huán)境如下:Pentium III - 16 Mb RAM - 2 Gb HD,操作系統(tǒng)為RedHat6.2.所有的文件系統(tǒng)都能正常工作,所以就進(jìn)行benchmark分析來對(duì)它們進(jìn)行性能比較。首先我直接拔掉系統(tǒng)電源以模擬系統(tǒng)掉電情況,以測(cè)試日志文件系統(tǒng)恢復(fù)過程。所有的文件系統(tǒng)都成功地經(jīng)過了文件掃描檢測(cè)階段,在數(shù)秒以后系統(tǒng)都經(jīng)過了掃描然后正常啟動(dòng)了系統(tǒng)。
下一步就采用了bonnie++性能測(cè)試程序(www.coker.com.au/bonnie++)進(jìn)行測(cè)試,這個(gè)程序?qū)σ粋€(gè)文件進(jìn)行數(shù)據(jù)庫類型的訪問,進(jìn)行了創(chuàng)建、讀和刪除小文件,這些操作對(duì)于Squid、INN或者M(jìn)aildir格式的郵件服務(wù)器程序(qmail)是最常見的操作。性能測(cè)試命令為:
bonnie++ -d/work1 -s10 -r4 -u0
其對(duì)加載在/work1目錄下的文件系統(tǒng)進(jìn)行了10Mb(-s10)的測(cè)試。因此在執(zhí)行測(cè)試之前必須創(chuàng)建適當(dāng)類型的文件系統(tǒng)并加載到目錄/work1下。其他的參數(shù)指定內(nèi)存大小(-r4)的M數(shù),和以root身份運(yùn)行測(cè)試程序,測(cè)試結(jié)果如下:
每種測(cè)試都有兩組數(shù)據(jù):文件系統(tǒng)速度(K/sec)和CPU占用率(%CPU)。速度越高,文件系統(tǒng)越好。而對(duì)于CPU率來說,數(shù)字越小性能越好。可以看到Reiserfs文件系統(tǒng)在文件操作方面(Sequential Create和Random Create部分的) 的性能最好,超出其他文件系統(tǒng)10倍之多。在其他方面(Sequential Output和Sequential Input)則和其他文件系統(tǒng)性能不相上下。對(duì)于其他文件系統(tǒng)則沒有特別明顯的區(qū)別。XFS性能接近ext2文件系統(tǒng),ext3文件系統(tǒng)則比ext2要稍微慢上一些(因?yàn)橛涗浫罩拘枰恍╊~外的時(shí)間)。
最后使用從www.namesys.com得到的性能測(cè)試程序mongo,并對(duì)其進(jìn)行了修改以對(duì)三種日志文件系統(tǒng)進(jìn)行測(cè)試。這里在mongo.pl程序中添加了添加了加載xfs和ext3文件系統(tǒng)的命令,并對(duì)其進(jìn)行格式化處理,然后就開始性能測(cè)試分析。 該腳本格式劃分區(qū)/dev/xxxx,加載其并在每個(gè)階段運(yùn)行指定數(shù)目的進(jìn)程:創(chuàng)建、拷貝、符號(hào)連接處理、讀、顯示文件狀態(tài)信息、重命名和刪除文件。同時(shí),該程序在創(chuàng)建和拷貝階段以后會(huì)計(jì)算分段數(shù)(fragmentation)。
評(píng)論