Linux下Ext3和Reiserfs文件系统优劣分析

文件系统是包括在存储设备或分区上的一种目录结构。通常情况下,一个可应用的存储设备可以包含一个或多个文件系统。通俗的说,一个文件系统是有组织存储文件或数据的方法,目的是易于操作系统查询和存取数据。现在常见的文件系统有FAT3、NTFS、Ext3和Reiserfs等等。不过不同的操作系统其支持的文件系统是不同的。以Linux为例,其主要支持Ext2、Ext3和Reiserfs等文件系统。

  作为一个Linux系统工程师,必须了解各个文件系统的特点。然后在实际应用中根据应用场景来选择合适的文件系统。不同的文件系统有不同的特性,这种特性往往决定着在文件系统中文件和目录的属性。每个文件系统都有一系列的工具,包括创建、修复、备份等。值得一说的是大多文件系统都有自我修复工具。在您的文件系统意外出现损害的情况下,采用文件系统自带的修复功能修复等等。笔者在这篇文章中将简要介绍一下Ext3和Reiserfs 文件系统的特点,并对他们的优劣做一定的分析。希望这可以帮助大家消除在文件系统选择时的迷惑。

  一、 Ext3 文件系统。

  Ext2文件系统应该说是Linux正宗的文件系统,早期的Linux都是用ext2。但随着技术的发展,大多Linux的发行版本目前并不用这个文件系统了,而大多都建议用ext3文件系统。Ext3文件系统是由ext2发展而来的。在Linux所用的Ext3文件系统中,文件是以块为单位存储的,默认情况下每个块的大小是1K,不同的块以块号区分。每个文件还有一个节点。节点中包含有文件所有者、读写权限、文件类型等有用信息。对于一个小于12个块的文件,在节点中直接存储文件数据块的块号。如果文件大于12个块,那么节点在12个块号之后存储一个间接块的块号。在这个间接块号所对应的块中,存储有256个文件数据块的块号。如果有更大的文件,那么还会在节点中出现二级间接块和三级间接块。所以Ext3文件系统中是支持大文件的。不过不支持反删除操作。

  二、 Reiserfs 文件系统。

  Reiserfs 文件系统是一款优秀的文件系统,它支持大文件,而且还支持反删除操作。他也是一个比较老的文件系统。但是他并没有像Ext2文件系统那样被抛弃。现在这个文件系统应用的仍然很广泛,很有生命力。这主要是因为这个文件系统有比较出色的表现。

  如这个文件系统有比较高级的日志管理机制。它的日志管理机制制保证了在每个实际数据修改之前,相应的日志已经写入硬盘。如此的话,文件与数据的安全性有了很大提高。如在这种文件系统下,磁盘的利用率是很高的。Reiserfs文件系统对一些小文件并不分配inode。而是将这些文件打包,存放在同一个磁盘分块中。而其它文件系统则为每个小文件分别放置到一个磁盘分块中。这也就是说,如果有20000个小文件,就要占用20000个分块。这很浪费磁盘空间。在这一点上比NTFS文件系统设计的还要好。而且,其还支持海量的硬盘。ReiserFS文件系统可轻松管理上百G的文件,最大支持的文件系统尺寸为16TB。为此在一些大型的Linux服务器中,这个文件系统是首选。

  另外,Reiserfs文件系统在性能上也有比较杰出的表现。如文件定位非常的快。Reiserfs文件系统基于快速平衡树搜索。平衡树在性能上非常卓越,这是一种非常高效的检索算法。Reiserfs文件系统在大量文件中搜索文件时,搜索速度要比其他文件系统快得多。Reiserfs文件系统使用B*Tree存储文件,而其它文件系统使用B+Tree树。B*Tree查询速度比B+Tree要快很多。故Reiserfs文件系统在文件定位上速度非常快。 其性能的优越还表现在其存储上。Reiserfs文件系统,它的数据非常高效、快速,甚至小文件硬盘输入输出。使用Reiserfs文件系统的计算机,在启动X窗口系统时,所花的时间要比在同一台机器上使用其他文件系统少很多。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/28745.html