Linux下的文件系统格式

上一篇 / 下一篇  2012-06-25 14:18:14

Linux由于其开源安全特性正在被多数企业所接受。Linux支持多种文件系统格式,有jfs、ext、ext2、ext3、iso9600、xfs、Vfat、NTFS、msdos、Nfs、smb、sysv、proc等等,支持的所有格式可使用如下方法查看:

  • 以超级用户的权限登录Linux;
  • 进入到/lib/modules/2.6.32-24-generic/kernel/fs/目录中执行命令ls即可查看支持的文件系统类型

注:不同的Linux发行版本的fs目录有些不同,可使用查找fs文件夹的方法查找

以下是对我们常用的几个文件系统类型做以介绍:

一、ext

  ext是第一个专门为Linux的文件系统类型,叫做扩展文件系统。它在19924月完成的。它为Linux的发展取得了重要作用。但是在性能和兼容性上存在许多缺陷。现在已经很少使用了。

二、ext2

ext2是为解决ext文件系统的缺陷而设计的可扩展的高性能的文件系统。又被称为二级扩展文件系统。它是在1993年发布的,设计者是Rey Cardext2Linux文件系统类型中使用最多的格式。并且在速度和CPU利用率上较突出,是GNU/Linux系统中标准的文件系统,其特点为存取文件的性能极好,对于中小型的文件更显示出优势,这主要得利于其簇快取层的优良设计。Ext2可以支持256字节的长文件名,其单一文件大小与文件系统本身的容量上限与文件系统本身的簇大小有关,在一般常见的Intel x86兼容处理器的系统中,簇最大为4KB,则单一文件大小上限为2048GB,而文件系统的容量上限为6384GB。尽管Linux可以支持种类繁多的文件系统,但是2000年以前几乎所有的Linux发行版都用ext2作为默认的文件系统。

ext2的缺点:ext2的设计者主要考虑的是文件系统性能方面的问题。ext2在写入文件内容的同时并没有同时写入文件的meta-data(和文件有关的信息,例如:权限、所有者以及创建和访问时间)。换句话说,Linux先写入文件的内容,然后等到有空的时候才写入文件的meta- data。这样若出现写入文件内容之后但在写入文件的meta-data之前系统突然断电,就可能造成在文件系统就会处于不一致的状态。在一个有大量文件 操作的系统中出现这种情况会导致很严重的后果。另外但由于目前核心2.4所能使用的单一分割区最大只有2048GB,尽管文件系统的容量上限为6384G但是实际上能使用的文件系统容量最多也只有2048GB

三、ext3

ext3是由开放资源社区开发的日志文件系统,主要开发人员是Stephen tweedieext3被设计成是ext2的升级版本,尽可能地方便用户从ext2fsext3fs迁移。ext3ext2的基础上加入了记录元数据的日志功能,努力保持向前和向后的兼容性。这个文件系统被称为ext2的下一个版本。也就是在保有目前ext2的格式之下再加上日志功能。ext3是一种日志式文件系统。日志式文件系统的优越性在于:由于文件系统都有快取层参与运作,如不使用时必须将文件系统卸下,以便将快取层的资料写回磁盘中。因此每当系统要关机时,必须将其所有的文件系统全部卸下后才能进行关机。如果在文件系统尚未卸下前就关机(如停电)时,下次重开机后会造成文件系统的资料不一致,故这时必须做文件系统的重整工作,将不一致与错误的地方修复。然而,此一重整的工作是相当耗时的,特别是容量大的文件系统,而且也不能百分之百保证所有的资料都不会流失。故这在大型的伺服器上可能会造成问题。

ext3的缺点:其最大的缺点是没有现代文件系统所具有的能提高文件数据处理速度和解压的高性能,另外使用ext3文件系统时要注意硬盘限额问题, 它的硬盘使用率不佳,大概只有真正空间的93%会被使用到,至于其它性能测试表现则为中等,其格式化与创建文件系统的时间也是其他文件系统的数十倍。在这个问题解决之前,不推荐在重要的企业应用上采用ext3+disk quota(磁盘配额)。

四、jfs

    JFS是IBM公司为linux系统开发的一个日志文件系统。从IBM的实力及它对Linux的态度来看,JFS应该是未来日志文件系统中最具实力的一个文件系统。JFS提供了基于日志的字节级文件系统,该文件系统是为面向事务的高性能系统而开发的。JFS能够在几秒或几分钟内就把文件系统恢复到一致状态。JFS能够保证数据在任何意外宕机的情况下,不会造成磁盘数据的丢失与损坏。它是可靠、快速和容易使用的它具有存储空间更大(JFS 支持的最小文件系统是16M字节。最大文件系统的大小为512万亿字节(TB)。JFS是真正意义上的64位的文件系统。所有JFS文件系统结构化字段都是64位大小)、动态磁盘inode分配(JFS按需为磁盘 inode动态地分配空间,释放不再需要的空间。这种方式避开了在文件系统创建期间,为磁盘inode保留固定数量空间的传统方法。用户不需要考虑文件系统包含的文件和目录最大数目)、基于盘区的寻址结构(JFS使用基于盘区的寻址结构,JFS分配尝试通过分配最小数量的盘区策略,而使每个盘区尽可能大。这有利于大的 I/O 传送,磁盘读写性能所有提高) 、块尺寸可变(JFS 支持512、1024、2048和4096字节的块尺寸,允许用户根据应用环境优化空间利用率。较小的块尺寸减少有利于内部存储碎片的数量,提高空间利用率。系统缺省块尺寸为4096字节)的特点。

jfs的缺点:使用jfs日志文件系统,性能上会有一定损失,系统资源占用的比率也偏高。是因为当它保持一个日志时,系统需要写许多数据。

五、ReiserFS

ReiserFS的第一次公开亮相是在1997723日,Hans Reiser把他的基于平衡树结构的ReiserFS文件系统在网上公布。ReiserFS使用了特殊的优化b*平衡树(每个文件系统一个)来组织所有的文件系统数据。这为其自身提供了非常不错的性能改进,也能够减轻文件系统设计上的人为约束。例如,现在一个目录下可以容纳ext00,000个子目录。另一个使用b*树的好处就是ReiserFS能够像大多其它的下一代文件系统一样,根据需要动态地分配索引节,而不必在文件系统创建时建立固定的索引节。这有助于文件系统更灵活地适应其面临的各种存储需要,同时提供附加的空间有效率。ReiserFS的特色是为从处理大型文件到众多小文件都可以用很高的效率,实际上ReiserFS在处理文件小于1KB的小文件时,效率甚至可以比Ext3快约10倍,所以ReiserFS的专长是处理很多小文件。

ReiserFS缺点:ReiserFS一个最受人批评的缺点是每升级一个版本,都将要将磁盘重新格式化一次。

六、xfs

xfs是一种非常优秀的日志文件系统,它是SGI公司设计的。xfs被称为业界最先进的、最具可升级性的文件系统技术。它是一个全64,快速、稳固的日志文件系统,多年用于SGIIRIX操作系统作为一个64位文件系统,xfs可以支持超大数量的文件(9g× 1gb,甚至更大的18g×1gb),可在大型2d3d数据方面提供显着的性能。xfs有能力预测其它文件系统薄弱环节,同时xfs提供了在不妨碍性能的情况下增强可靠性和快速的事故恢复。SGIxfs可为linux和开放资源社区带来的新特性有:可升级性:xfs被设计成可升级,以面对大多数的存储容量和i/o存储需求,可处理大型文件和包含巨大数量文件的大型目录,满足二十一世纪快速增长的磁盘需求。xfs有能力动态地为文件分配索引空间,使系统形成高效支持大数量文件的能力。在它的支持下,用户可使用1exabyte1g×1gb)大的文件,远远大于现在最大的文件系统。优秀的i/o性能:典型的现代服务器使用大型的条带式磁盘阵列,以提供达数gb/秒的总带宽。xfs可以很好地满足I/O请求的大小和并发I/O请求的数量。xfs可作为root文件系统,并被lilo支持.NFS服务器上使用也没问题.支持软件磁盘阵列(RAID)和虚拟集群(LVM)。

xfs的缺点:由于xfs比较复杂,实施起来有一些难度,所以目前xfs主要应用于Linux企业应用的高端。




Linux由于其开源安全特性正在被多数企业所接受。Linux支持很多种文件系统


TAG:

 

评分:0

我来说两句

日历

« 2024-04-22  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 3759
  • 日志数: 4
  • 建立时间: 2011-06-30
  • 更新时间: 2012-07-23

RSS订阅

Open Toolbar