歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

EXT3系統文件

  新一代的 Linux 作業系統的檔案系統,使用Journalling Filesystem 日志式檔案系統以取代舊有的傳統 ext2 檔案系統,已成一必然趨勢;目前較為熟知的日志式檔案系統如 Red Hat 的 ext3、NSV的 ReiserFS、IBM 的 JFS、及SGI 的 xfs 等…。「日志」主要的精髓還是在於「log」的功能。易言之,Journal File System於系統資料改變前,會先記錄將執行的動作記錄,如適逢不正常的關機或電力中斷時,可確保資料不致遺失。 觀之現有幾個主要 Linux Distribution,大都采ReiserFS的日志式檔案系統居多,惟Red Hat 則自Red Hat Linux 7.2版開始使用ext3 的日志式檔案系統, ext3 比起ext2 如僅擇一理由簡言之,就是多了日志功能;至於Red Hat獨沽ext3 的日志式檔案系統,不外乎基於下述原因: (1) ext3 可以前後相容於 ext2,ext2 的使用者可以在既存的檔案系統中簡單地即可增加日志功能,如要還原 ext2亦復簡易;同時,只要有較新版的 e2fsprogs 套件,ext3 的檔案系統,無須移除 journal,也可以掛載 ext2的檔案系統。 (2) ext3 不但增益了檔案的優點,也承繼了某些 ext2的優點,例如 HTrees 可使大型目錄的運作更為迅速、extended的屬性特點可以啟動存取控制清單。 (3) ext3 使用generic journaling layer (jbd),所以不僅可以日志檔系統,其他的設備如NVRAM,也可 journal (4) ext3 具備多種日志模式例如: data=journal:可以日志所有的data 和metadata檔案 data=ordered:僅日志metadata檔案,不含data檔案,但data=ordered會使metadata指向有效的data data=writeback: 僅日志metadata檔案,不含data檔案,但data=writeback會使檔案系統維持一致性,不過系統不正常關機後,舊有資料會出現在檔案中 writeback 的特色在於速度效率,雖然檔案系統仍可維持一致性,但quality不是那麼高,主要還是用效能的調整,例如當我們從ext2 轉換到ext3時,如果遇到應用程式的效能降低,設data=writeback是不錯的選擇 系統管理者則可在多種日志模式中針對存取速度和檔案資料的一致性的不同考量,而采用不同的日志模式 (5) ext3具備32 bit 或64 bit 架構的跨平台日志能力 (6) ext3 已整合進 Linux 的kernel (7) ext3 仍援用e2fsck code 資料毀損容錯的特點 至於實際上的使用則簡述如後: 1.下載 ext3 patch 檔 (可使用在 2.2.x 或 2.4.x ), # cp ext3-2.4-0.x.y.patch.gz /usr/src # gunzip ext3-2.4-0.x.y.patch.gz # patch -p0 < ext3-2.4-0.x.y.patch # cd /usr/src/linux # make mrproper # make menUConfig 在kernel選單上選 ext3 和 JBD debugging support # make dep # make clean # make bzImage # make install # make modules # make modules_install ext3 可以選擇編譯進 kernel 或 build 成 module, 編譯進 kernel的可以簡化萬一 fail,有利於診斷資料的收集。 其次再編輯LILO 開機管理程式的設定檔 /etc/lilo.conf 或 GRUB開機管理程式的設定檔 /boot/grub/menu.lst中kernel的設定資料。 最後再更新 MBR 的 boot loader; LILO 開機管理程式: 在系統提示符號下 lilo □v □v -v GRUB開機管理程式: 在系統提示符號下grub command,進入grub mode ,再重設MBR,下setup(hd0),再離開 grub mode,然後reboot (或 reboot 後進入編輯模式設定亦可,請自行 man grub 用法) 2.下載util-linux 2.11版以後的套件 下載網址: http://www.kernel.org/pub/linux/utils/util-linux/ 3. 下載e2fsprogs 1.25版以後的套件 下載網址: http://www.rpmfind.net/ 下載網址: http://e2fsprogs.sourceforge.net/


4.轉換 ext2 的檔案系統為 ext3 : (1)tune2fs -j /dev/hdXX -j 指建一個 journal file,早期e2fsprogs 的套件並未支援;上述檔案系統經此調整後便可掛載為 ext3。 (2)將 /etc/fstab /dev/hdXX 哪一行的 ext2 改為 ext3,例如: /dev/hda3 / ext2 defaults,errors=remount-ro 0 1 改為 /dev/hda3 / ext3 defaults,errors=remount-ro 0 1 (3)不需要再 umount 5.建立新的ext3的檔案系統: mke2fs -j /dev/hdXX 這樣透過 mke2fs 便可以產生新的ext3的檔案系統 6.關閉定期檔案系統檢查的預設期間 tune2fs -i 0 -c 0 /dev/hdxx 一般檔案系統檢查的預設期間周期為第12次的mount或每180天,作此設定會關閉定期檔案系統檢查的預設期間 -c 指的是在兩次檔案系統作檢查間隔間的總掛載數,當設為 0時,kernel 會視為不作檢查 - i 指interval 設為0 時,會關閉每180天檔案系統檢查的預設期間 7. root filesystem 的LILO options 設定: (1) 覆寫 ext3 的預設 LILO: linux rootfstype=ext2 (2)使用rootflags options 設定 LILO: linux rootflags=data=journal 8.I/O elevator效能的調整設定: 大部份 Linux 區塊設備driver 率皆利用可調整的elevator 運作法則來作 block I/O效能的調整設定,相較於ext2,ext3使用elvtune 程式僅需較小的latency讀寫數,即可獲致較大的throughtput;ext2 的檔案系統一般寫入一次需30秒,ext3僅需5秒,較有利於硬碟上資料的更新。 RedHat 將latency預設的讀寫值從8192 read, 16384 write 減半至 4096 read, 8192 write,如果我們要針對特定應用程式作I/O elevator效能的調整, 我們可以在ext3上使用elvtune程式改變elevator設定例如: # elvtune -r 1024 -w 2048 /dev/sda (write 的latency 通常是read latency 的一半) 如果一開機就要作此調整,可在/etc/rc.d/rc.local檔案加入一行elvtune -r 1024 -w 2048 /dev/sda



RedHat 將latency預設的讀寫值從8192 read, 16384 write 減半至 4096 read, 8192 write,如果我們要針對特定應用程式作I/O elevator效能的調整, 我們可以在ext3上使用elvtune程式改變elevator設定例如: # elvtune -r 1024 -w 2048 /dev/sda (write 的latency 通常是read latency 的一半) 如果一開機就要作此調整,可在/etc/rc.d/rc.local檔案加入一行elvtune -r 1024 -w 2048 /dev/sda



Copyright © Linux教程網 All Rights Reserved