关于centos下初识日志式文件系统


关于centos下初识日志式文件系统


关于centos下初始日志式文件系统(ext3)的详细介绍会按照以下的四个方面分别的展开:
1、日志式文件系统
2、ext3的优点
3、ext3的三种日志模式
4、选择日志模式
具体的介绍如下:
1、日志式文件系统
通常在系统运行中写入文件内容的同时,并没有写入文件的元数据(如权限、所有者及创建和访问时间),如果在写入文件内容之后与写入文件元数据之前的时间差里,系统非正常关闭,处于写入过程中的文件系统会非正常卸载,那么文件系统就会处于不一致的状态 。当重新启动时,Linux会运行fsck程序,扫描整个文件系统,保证所有的文件块都被正确地分配或使用,找到被损坏的目录项并试图修复它 。但是,fsck不保证一定能够修复损坏 。出现这种情况时,文件中不一致的元数据会填满已丢失文件的空间,目录项中的文件项可能会丢失,也就造成文件的丢失 。
为了尽量减少文件系统的不一致性,缩短操作系统的启动时间,文件系统需追踪引起系统改变的记录,这些记录存放在与文件系统相分离的地方,通常我们叫“日志” 。一旦这些日志记录被安全地写入,日志文件系统就可以应用它们清除引起系统改变的记录,并将它们组成一个引起文件系统改变的集,将它们放在数据库的事务处理中,保持在状态下有效数据的正常运行,不与整个系统的性能发生冲突 。在任何系统发生崩溃或需要重新启动时,数据就遵从日志文件中的信息记录进行恢复 。由于日志文件中有定期的检查点,通常非常整齐 。文件系统的设计主要考虑效率和性能方面的问题 。
Linux可以支持许多日志文件系统,包括FAT、VFAT、HPFS(OS/2)、NTFS(Windows NT)、UFS、XFS、JFS、ReiserFS、ext2、ext3等 。
2、ext3的优点
为什么你需要从ext2迁移到ext3呢?以下有四个主要原因:可用性、数据完整性、速度、易于迁移 。
可用性
在非正常当机后(停电、系统崩溃),只有在通过e2fsck进行一致性校验后,ext2文件系统才能被装载使用 。运行e2fsck的时间主要取决于 ext2文件系统的大小 。校验稍大一些的文件系统(几十GB)需要很长时间 。如果文件系统上的文件数量多,校验的时间则更长 。校验几百个GB的文件系统可能需要一个小时或更长 。这极大地限制了可用性 。相比之下,除非发生硬件故障,即使非正常关机,ext3也不需要文件系统校验 。这是因为数据是以文件系统始终保持一致方式写入磁盘的 。在非正常关机后,恢复ext3文件系统的时间不依赖于文件系统的大小或文件数量,而依赖于维护一致性所需“日志”的大小 。使用缺省日志设置,恢复时间仅需一秒(依赖于硬件速度) 。
数据完整性
使用ext3 文件系统,在非正常关机时,数据完整性能得到可靠的保障 。你可以选择数据保护的类型和级别 。你可以选择保证文件系统一致,但是允许文件系统上的数据在非正常关机时受损;这是可以在某些状况下提高一些速度(但非所有状况) 。你也可以选择保持数据的可靠性与文件系统一致;这意味着在当机后,你不会在新近写入的 文件中看到任何数据垃圾 。这个保持数据的可靠性与文件系统一致的安全的选择是缺省设置 。
速度
尽管ext3写入数据的次数多于ext2,但是ext3常常快于ext2(高数据流) 。这是因为ext3的日志功能优化硬盘磁头的转动 。你可以从3种日志模式中选择1种来优化速度,有选择地牺牲一些数据完整性 。第 一种模式,data=http://www.ljsggw.cn/internet/writeback,有限地保证数据完整,允许旧数据在当机后存在于文件当中 。这种模式可以在某些情况下提高速度 。(在多数日志文件 系统中,这种模式是缺省设置 。这种模式为ext2文件系统提供有限的数据完整性,更多的是为了避免系统启动时的长时间的文件系统校验)第二种模式,data = orderd(缺省模式),保持数据的可靠性与文件系统一致;这意味着在当机后,你不会在新近写入的文件中看到任何垃圾数据 。第三种模式,data=journal,需要大一些的日志以保证在多数情况下获得适中的速度 。在当机后需要恢复的时间也长一些 。但是在某些数据库操作时速度会快一些 。在通常情况下,建议使用缺省模式 。如果需要改变模式,请在/etc/fstab文件中,为相应的文件系统加上data=模式的选项 。详情可参看mount命令的man page在线手册(执行man mount) 。

推荐阅读