1.3. XFS 文件系统

XFS 是一个高度可扩展、高性能、健壮且成熟的 64 位日志文件系统,其支持单个主机上非常大的文件和文件系统。它是 Red Hat Enterprise Linux 9 中的默认文件系统。XFS 最初于 1990 年代由 SGI 早期开发,并在非常大型的服务器和存储阵列中运行有很长的历史记录。

XFS 的功能包括:

可靠性
  • 元数据日志,其确保系统崩溃后文件系统的完整性,方法是保留系统重启和重新挂载文件系统时可以重新执行的文件系统操作的记录,
  • 广泛的运行时元数据一致性检查
  • 可扩展且快速修复工具
  • 配额日志。这可避免在崩溃后进行冗长的配额一致性检查。
可伸缩性和性能
  • 支持最多 1024 TiB 的文件系统大小
  • 支持大量并发操作的能力
  • B-tree 索引,用于空闲空间的可扩展性管理
  • 复杂的元数据读头算法
  • 优化流视频工作负载
分配方案
  • 基于扩展数据块的分配
  • 条带化分配策略
  • 延迟分配
  • 空间预分配
  • 动态分配的 inode
其他功能
  • 基于 Reflink 的文件副本
  • 严格集成备份和恢复工具
  • 在线清理
  • 在线文件系统增大
  • 全面的诊断功能
  • 扩展属性(xattr)。这允许系统能够按文件关联多个额外的名称/值对。
  • 项目或目录配额。这允许对目录树的配额限制。
  • 小于秒的时间戳

性能特性

XFS 在具有企业工作负载的大型系统上具有高性能。大型系统是一个有相对较多的 CPU 、多个 HBA 和连接外部磁盘阵列的系统。XFS 在具有多线程、并行 I/O 工作负载的较小系统上也表现良好。

对于单线程、元数据密集型工作负载,XFS 的性能相对较低:例如,在单个线程中创建或删除大量小文件的工作负载。