Linux(入门基础):25---Linux的XFS文件系统简介

介绍xfs文件系统之前,与ext系统做一个简单的比较

  • ext文件系统(支持度最广、但格式化超慢):ext系列的文件系统,在文件格式化时,采用的是规划出所有的inode、区块、元数据等数据,未来系统可以直接使用,不需要再进行动态配置,但是这个做法在早期磁盘容量还不大的时候可以使用。如今,磁盘的容量越来越大,连传统的MBR都已经被GPT取代。当使用磁盘容量在TB以上的传统ext系列文件系统在格式化的时候,会消耗相当多的时间
  • xfs文件系统(容量高,性能佳):由于虚拟化的应用越来越广泛,虚拟化磁盘来源的举行文件越来越常见,这些巨型文件在处理上考虑到刑恩那个问题,因此xfs比较适合高容量磁盘与巨型文件,且性能较佳的文件系统、

 

XFS文件系统

配置:几乎所有ext4文件系统有的功能,xfs都具备。xfs文件系统在数据的分布上,主要规划为3个部分

  • 数据区(data section)
  • 文件系统活动登录区(log section)
  • 实时运行区(realtime section)

一、数据区(data section)

1.概念

  • 与之前文章谈到过的ext文件系统一样,包括inode、数据区块、超级区块等数据都存储在这里
  • 这个区域类似于ext文件系统的区块群组,不过xfs将这个区域分为多个存储区群组(allocation groups,AG)来分别放置文件系统所需要的数据
  • 重点:inode与区块都是系统需要用到时才动态配置产生,因此格式化操作很快

存储区群组包含了

  • 整个文件系统的超级区块
  • 剩余空间的管理机制
  • inode的分配与追踪

2.与ext不同之处

xfs的区块容量与inode容量有多种不同的容量可供设置

  • 区块容量:可在512B-64KB之间调整(不过,在Linux环境下,由于存储控制的关系(页面文件pagesize的容量之故),因此最高可以使用的区块大小为4k。如果设置、高了也没问题,但是Linux内核不给挂载,格式化完之后也无法使用)
  • inode:容量可在256B-2MB之间,不过保留256B默认值就够用了

二、文件系统活动登录区(log section)

1.概念

  • 这个区域主要用来记录文件系统的变化,有点像是日志区
  • 文件的变化都会在这里被记录下来,直到该变化完整地写入到数据区后,该条记录才会被结束
  • 如果文件系统因为某些缘故而损坏时,系统会拿这个登录区块来进行检测,看看系统挂掉之前,文件系统正在运行写啥操作,借以快速地修复文件系统

2.注意

  • 因为系统所有讲的操作都会在这个区块做记录,所以这个区块的磁盘活动相当的频繁
  • 另外,xfs设计这个区域中,可以指定外部的磁盘来作为xfs文件系统的日志区块。(例如:你可以将SSD磁盘作为xfs的登录区,这样可以更快速地工作)

三、实时运行区(realtime section)

1.概念

  • 当文件要被建立时,xfs会在这个区段里面找到一到数个extent区块,将文件放置在这个区块内,等到分配完毕后,再写入到数据区的inode与区块中

2.extent区块

  • extent区块的大小在格式化的时候就已经指定好了
  • 最小值是4K,最大可达1G。一般非磁盘列阵的磁盘默认为64KB
  • 这个extent最好不要乱动,因为会影响到磁盘性能

 

xfs_info命令

1.功能:查看xfs文件系统的超级区块内容

2.格式

  • xfs_info 挂载点/设备文件名

你可能感兴趣的:(Linux(入门基础))