Linux文件系统类型简介及支持的文件系统汇总--Linux入门到精通系列

长平狐 发布于 2012/09/20 12:19
阅读 1K+
收藏 0
   不同的操作系统需要使用不同类型的文件系统,为了与其他操作系统兼容,以相互交换数据,通常操作系统都能支持多种类型的文件系统,比如Windows 2000 Server,系统默认或推荐采用的文件系统是NTFS,但同时也支持FAT32或FAT16文件系统;DOS和Windows 9x一般采用FAT16或FAT32,不支持NTFS文件系统。

    Linux内核支持十多种不同类型的文件系统,对于Red Hat Linux,系统默认使用ext2或ext3和swap文件系统,下面对Linux常用的文件系统作一个简单介绍。

    1、ext2与ext3文件系统ext是第一个专门为Linux设计的文件系统类型,称为扩展文件系统,在Linux发展的早期,起过重要的作用。由于稳定性,速度和兼容性方面存在许多缺陷,ext现已很少使用。

ext2是为解决ext文件系统存在的缺陷而设计的可扩展、高性能的文件系统,称为二级扩展文件系统。ext2于1993年发布,在速度和CPU利用率上具有较突出的优势,是GNU/Linux系统中标准的文件系统,支持256个字节的长文件名,文件存取性能极好。

ext3是ext2的升级版本,兼容ext2,在ext2的基础上,增加了文件系统日志记录功能,称为日志式文件系统,是目妆Linux默认采用的文件系统。日志式文件系统在因断电或其他异常事件而停机重启后,操作系统会根据文件系统的日志,快速检测并恢复文件系统到正常的状态,并可提高系统的恢复时间,提高数据的安全性。若对数据有较高安全性要求,建议使用ext3文件系统。

日志文件系统是目前Linux文件系统发展的方向,常用的还用reiserfs和jfs等日志文件系统。

    2、swap文件系统     swap文件系统用于Linux的交换分区。在Linux中,使用整个交换分区来提供虚拟内存,其分区大小一般应是系统物理内存的2倍,在安装Linux操作系统时,就应创分交换分区,它是Linux正常运行所必需的,其类型必须是swap,交换分区由操作系统自行管理。

    3、vfat文件系统
    vfat是Linux对DOS,Windows系统下的FAT(包括fat16和Fat32)文件系统的一个统称。

    4、NFS文件系统
    NFS即网络文件系统,用于在UNIX系统间通过网络进行文件共享,用户可将网络中NFS服务器提供的共享目录挂载到本地的文件目录中,从而实现操作和访问NFS文件系统中的内容。

    5、ISO 9660文件系统     该文件系统中光盘所使用的标准文件系统,Linux对该文件系统也有很好的支持,不仅能读取光盘和光盘ISO映像文件,而且还支持在Linux环境中刻录光盘。

    Red Hat Linux支持的文件系统很多,在些就不逐一介绍,要想了解其支持的文件系统类型,可通过以下命令来查看:
    # ls /lib/modules/2.4.20.8/kernel/fs


    以下是Linux支持的文件系统汇总1.minix:
   是Minix操作系统使用的文件系统,是Linux最先使用的文件系统。它有许多缺点:分区只能小于64MB,只支持短文件名,单一的时间戳,等等。在软盘和动态磁盘领域仍然有用。

2.ext
   是对Minix的扩展。已完全被ext2取代,内核最终将不会支持它。

3.ext2
   是Linux使用的,性能很好的文件系统,用于固定文件系统和可活动文件系统。它是作为ext文件系统的扩展而设计的。ext2在Linux所支持的文件系统中,提供最好的性能(在速度和CPU使用方面),简短的说,ext2是Linux的主要文件系统。

4.ext3
   是对ext2增加日志功能后的扩展。它向前,向后兼容ext2。意为ext2不用丢失数据和格式化就可以转换为ext3,ext3也可以转换为ext2 而不用丢失数据(只要重新安装该分区就行了)。我从2001年10月就使用ext3,它简单且稳定。在RedHat7.2和Mandrake8.0,中作为一个选项。强烈推荐使用这种文件系统。

5.xiafs
   作为Minix文件系统的一个稳定,安全的扩展,提供基本的最常用的特点。目前已经停止开发和维护了。不太常使用。

6.msdos
  是DOS, Windows和一些os/2计算机使用的文件系统。文件名不能超过8个字符,然后跟一个3个字符的后缀。

7.umsdos  
  是Linux使用的扩展的DOS文件系统。增加了长文件名支持,UID/GID,POSIX权限,特殊文件等而依然保持和DOS文件系统兼容。

8.vfat
  是Windows95,Windows NT使用的扩展的DOS文件系统。增加长文件名支持。

9.proc
   是一种假的文件系统,用于和内核数据结构接口, 它不占用磁盘空间,参考 man proc。

10.iso9660
   是一种针对ISO9660标准的CD-ROM文件系统。自动支持两种扩展(看下面)。

11.High Sierra
   是ISO9660标准的前身。Linux自动支持它。Rock Ridge 是Rock Ridge interchange Protocol协议的一个产品,用于进一步向Unix系统描述ISO9660文件系统下的文件。另外提供诸如长文件名,UID/GID,POSIX权限,等信息。Linux自动支持它。

12.hpfs
   是OS/2使用的高性能的文件系统。在Linux系统中是只读的,因为缺乏相应的文档资料。

13.sysv
   是SystemV/Coherent文件系统在Linux上的实现。它实现了所有的Xenix,SystemV/386,和 Coherent文件系统。

14.nfs  
   是用于存取远方计算机硬盘的文件系统。

15.smb  
   是支持SMB协议的网络文件系统,Windows用它来实现工作组共享。

16.ncpfs
  是Novell NetWare使用的,支持NCP协议的网络文件系统。

17.Devpts
    是一个虚拟的文件系统,一般安装在/dev/pts。为了得到一个虚拟终端,进程打开/dev/ptmx,然后就可使用虚拟终端。

18.fat
   不是一个单独的文件系统,而是msdos, umsdos 和vfat 文件系统的常用部分。

19.UFS
   是一个广泛使用于各种操作系统的文件系统

20.swap
  是一种特殊的分区,用于在内存和硬盘间交换数据的文件系统。

21.raiserfs
  是Linux内核2.4.1以后(2001年1 月)支持的,一种全新的日志文件系统。

22.hfs    
   hfs(=hierarchical files system)是苹果文件系统。

23.ntfs
   Windows NT文件系统。
 
原文链接:http://blog.csdn.net/lf8289/article/details/2146917
加载中
0
戚继光
戚继光

我特别想了解SMB是如何架起winodws访问Linux文件系统的桥梁的。

它内部是如何实现的,这个问题一直挺困扰我得。看了一部分源码,一下子有些晕。

返回顶部
顶部