ext3是由开放资源社区开发的日志文件系统,主要开发人员是redhat的黑客高手stephen tweedie。ext3被设计成是ext2的升级版本,尽可能地方便用户从ext2fs向ext3fs迁移。ext3在ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性。这个文件系统也许称为ext2的下一个版本更为合适些。
ext3fs工作得很好。ext3fs最大的优点是向下兼容ext2。而且ext3fs还支持异步的日志,这意味着它的性能可能比ext2还好。但是使用ext3文件系统时要注意硬盘限额问题,在这个问题解决之前,不推荐在重要的应用上采用ext3+disk quota
ext3最新版本是针对kernel 2.4.8的ext3-2.4-0.9.6-248.gz
新推出的redhat 7.2B上正式启用了ext3,Turbolinux Server 6.5则同时支持 ReiserFS 及 ext3.
一、安装ext3文件系统(以redhat 7.1为例)
首先下载ext3-2.4-0.9.6-248.gz和linux-2.4.8.tar.gz并把它们拷贝到/usr/src/目录下.
你可能要下载最新版的util-linux(http://www.kernel.org/pub/linux/utils/util-linux/)和e2fsprogs
(http://e2fsprogs.sourceforge.net/)
要确保e2fsprogs的版本>1.22,redhat 7.1也需要升级.怕麻烦的可下载redhat 7.2b的相应rpm包e2fsprogs-1.22-3.i386.rpm和util-linux-2.11f-5.i386.rpm
rpm -Uhv e2fsprogs-1.22-3.i386.rpm
rpm -Uhv util-linux-2.11f-5.i386.rpm
tar zxvf linux-2.4.8.tar.gz
mv kernel linux-2.4.8
rm linux-2.4
ln -s linux-2.4.8 linux-2.4
cd /usr/src/linux-2.4
gunzip < ../ext3-2.4-0.9.6-248.gz | patch -p1
make mproper
make menuconfig(在文件系统栏目中选上ext3,作为模块也可以.再选上"JBD debugging support"项,如果出错的话,可提供有用的信息;通常不要选上"Buffer head tracing",因为这样的话会使用大量的内存.)
make dep
make clean
make bzImage
make modules
make modules-install
cp System.map /boot/System.map-2.4.8
cp arch.i386/boot/bzImage /boot/vmlinuz-2.4.8
cd /boot
rm System.map
ln -s System.map-2.4.8 System.map
vi /etc/lilo.conf
lilo
reboot
二、把ext2文件系统转换成ext3文件系统
通过在已有的ext2文件系统上添加日志文件可把ext2文件系统转换成ext3文件系统.假设打算把原/back (/dev/hda4)从ext2文件系统转换成ext3文件系统.
1、卸载/back目录
umount /back
2、转换
tune2fs -j /dev/hda4
3、安装/back目录
mount -t ext3 /dev/hda4 /back
4、修改/etc/fstab文件.
三、创建新的ext3文件系统
假设打算把/dev/hda4)创建为ext3文件系统.
1、创建
mke2fs -j /dev/hda4
2、安装/back目录
mount -t ext3 /dev/hda4 /back
3、修改/etc/fstab文件.
四、在ext2与ext3之间切换
你可以把一个文件系统在ext3和ext2自由切换.因为在ext2文件系统上的ext3日志文件仍然存在,只是ext2不能认出而已.
umount /back
mount -t ext3 /dev/hda4 /back
umount /back
mount -t ext2 /dev/hda4 /back
五、文件系统修复
新的e2fsprogs中的e2fsck支持ext3.当一个ext3文件系统被破坏时,先卸载该设备,在用e2fsck修复.
umount /back
e2fsck -fy /dev/hda4
六、其它事项
用ext3可以避免重启动时长时间的文件系统检查.用下面的名令:
tune2fs -i 0 -c 0 /dev/hda4来关闭文件系统检查.