Linux下Ext2与Ext3文件系统的区别

Ext2: 是 GNU/Linux 系统中标准的文件系统 , 其特点为存取文件的性能极好 , 对于中小型的文件更显示出优势 , 这主要得利于其簇快取层的优良设计 。其单一文件大小与文件系统本身的容量上限与文件系统本身的簇大小有关 , 在一般常见的 x86 电脑系统中 , 簇最大为 4KB, 则单一文件大小上限为 2048GB, 而文件系统的容量上限为 16384GB 。但由于目前核心 2.4 所能使用的单一分割区最大只有 2048GB , 实际上能使用的文件系统容量最多也只有 2048GB 。
Ext3:
【Linux下Ext2与Ext3文件系统的区别】1.Ext3 是一种日志文件系统 , 是对ext2系统的扩展 。它兼容ext2 , 并且从ext2转换成ext3并不复杂 。
用来支持ext3的包都被包含在LFS基本系统里面了 , 所以你不用再安装其他的程序 。
当编译内核的时候 , 确认你编译了ext3的支持 。如果你想在根分区使用ext3系统 , 你就需要把 ext3支持编译到内核的内嵌支持 。如果不是在根分区使用 , 编译成模块就可以了 。
编辑/etc/fstab 。把每一个你想转换成ext3的分区的条目改成类似的内容:
/dev/hdXX /mnt_point ext3 defaults 1 0
在上面的一行中 , 将 /dev/hdXX 替换成分区 , 例如 /dev/hda2 , 把 /mnt_point 替换成你想挂载的位置 , 例如:/home 。最后的 0 保证在启动的时候这个分区不会被chechfs脚本进行一致性检查 。若想这个分区肯定可以被挂载然后又不太肯定内核支持ext3的话 , 可以把ext3换成auto 。
启动每一个你在 /etc/fstab中改为ext3的分区的日志 , 运行:
tune2fs -j /dev/hdXX 重新挂载分区或者重起系统(如果你重新编译了内核) 。
2.也是在保有目前 ext2 的格式之下再加上日志功能 。目前它离实用阶段还有一段距离 ,
ext3是一种日志式文件系统 。日志式文件系统的优越性在于:由于文件系统都有快取层参与运作 , 如不使用时必须将文件系统卸下 , 以便将快取层的资料写回磁盘中 。因此每当系统要关机时 , 必须将其所有的文件系统全部shutdown后才能进行关机 。
如果在文件系统尚未shutdown前就关机 (如停电) 时 , 下次重开机后会造成文件系统的资料不一致 , 故这时必须做文件系统的重整工作 , 将不一致与错误的地方修复 。然而 , 此一重整的工作是相当耗时的 , 特别是容量大的文件系统 , 而且也不能百分之百保证所有的资料都不会流失 。
为了克服此问题 , 使用所谓‘日志式文件系统 (Journal File System) ’ 。此类文件系统最大的特色是 , 它会将整个磁盘的写入动作完整记录在磁盘的某个区域上 , 以便有需要时可以回朔追踪 。由于资料的写入动作包含许多的细节 , 像是改变文件标头资料、搜寻磁盘可写入空间、一个个写入资料区段等等 , 每一个细节进行到一半若被中断 , 就会造成文件系统的不一致 , 因而需要重整 。然而 , 在日志式文件系统中 , 由于详细纪录了每个细节 , 故当在某个过程中被中断时 , 系统可以根据这些记录直接回朔并重整被中断的部分 , 而不必花时间去检查其他的部分 , 故重整的工作速度相当快 , 几乎不需要花时间 。
另外Linux中还有一种专门用于交换分区的swap文件系统 , Linux使用整个分区来作为交换空间 , 而不象Windows使用交换文件 。一般这个SWAP格式的交换分区是主内存的2倍 。

    推荐阅读