XFS 工具集 xfsprogs 7.2.1:建盘、修复、扩容与体检

摘要

XFS 的整套命令行工具 7.2.1:mkfs 建盘、xfs_repair 修复、xfs_growfs 在线扩容、xfs_scrub 挂载中体检,另有配额与元数据调试。

推荐
软件名称
XFS
版本
7.2.1
收费
免费
开源
开源
操作系统
Linux
更新时间
2026-10-22 21:44

文件系统平时不露面,只在出事的时候被想起。xfsprogs 7.2.1 就是 XFS 在用户空间里的那一整套手动工具:建盘、修复、扩容、体检,一条命令管一件事。

一套命令,管一个文件系统的一生

XFS 是高吞吐的日志式文件系统,最早出现在 SGI 的 IRIX 上,进了 Linux 之后写成完全多线程的实现。大文件、大文件系统、扩展属性、可变块大小都在它的能力范围里;盘上的空间按 extent 记账,目录、extent 和空闲空间都用 B 树索引,这也是它在大目录、高并发元数据操作下依然稳得住的原因。挂载时它能接受一长串选项:allocsize 决定延迟分配时的预分配粒度,默认 64KiB;inode64 让 inode 落在文件系统的任意位置;logbsize 管日志缓冲。这些选项写在文档里,改起来靠的是命令行。

xfsprogs 就是这套东西的用户空间工具集。7.2.1 的源码包里,man8 目录下挂着二十多个独立命令,每个只管一件事,不做大而全的整合。

建盘:mkfs.xfs 的参数值得多看两眼

一条 mkfs.xfs 加上设备名就能出盘,默认值对普通盘够用。真到机架上,参数就得跟着硬件走:sunit 与 swidth 对着 RAID 的条带单元和条带宽度给,让分配组对齐到条带边界;要外置日志就指 logdev,要用实时设备就指 rtdev;分配组的数量决定元数据并行度,块大小、inode 大小、日志大小各有取值区间。想省事也能把这些默认选项写成固定值,7.2.0 之后可以直接落在配置文件里,不用每次手敲。

出事之后:离线修复和在线体检是两条路

盘上出了问题,先要分清是哪种情况。fsck.xfs 挂在启动脚本里,它只是占位,实际不做检查;真正的离线修复交给 xfs_repair,前提是文件系统已经卸载。在线体检是另一条路:xfs_scrub 在挂载状态下分阶段扫描,能自己修的顺手修掉,修不了的给出下一步建议,跑完还能通过系统服务把结果发出去。

7.1 这一段的更新日志里,大半条目都落在 xfs_scrub 上:spacemap 扫描的修正、实时设备组的修复估算、外部日志的空间统计、损坏区间的报告口径。工具成熟度往往就体现在这种细碎条目里。

扩容、配额与日常巡检

盘不够用的时候,xfs_growfs 能在挂载状态下把空间吃满,底层块设备扩完,文件系统跟着长,业务不用停。配额交给 xfs_quota,用户、用户组、项目三类都支持,projects.5 与 projid.5 两个手册页讲的是项目配额怎么定义与继承。

日常巡检的那一堆小工具更常用:xfs_info 看挂载参数与几何,xfs_admin 改标签与 UUID,xfs_bmap 查文件落在哪些 extent 上,xfs_fsr 整理碎片,xfs_db 直接翻元数据结构,xfs_metadump 与 xfs_mdrestore 做元数据镜像和还原。xfs_io 是个交互式的壳,几十个子命令覆盖读写、属性、空间预分配这些操作。

7.2.1 这一版,以及 7.x 这半年的变化

7.2.1 是修补型发布:mkfs 允许关掉配额标志,xfs_quota 修了查询状态的参数指针,xfs_scrub 在管理员卸载时会把系统服务一起收掉,xfs_io 在实时组信息里补了一个字段。

往前看,7.2.0 的动作更大一些。mkfs 支持用配置文件指定默认选项,xfs_admin、xfs_spaceman、xfs_db 都能把挂载中的文件系统配置打出来,建盘参数从此有了可复制的文本形态;mkfs 还会更早地升级 autofsck 属性,日志过小的提示也换成了能看懂的说法。再往前,7.0.0 的份量最重:新增 xfs_healer,一个常驻服务,订阅文件系统的健康事件,按需做局部修复,挂载点被搬走时还能靠 statmount 跟过去;xfs_io 也补齐了健康事件订阅与介质校验;mkfs 在反向引用全部打开的情况下,默认就把在线修复打开。

命令行工具的边界

它没有图形界面,全部落在终端里,参数靠 man 手册查,脚本靠 shell 串。扩容这件事它只往大了做,缩容不在能力范围内,真要变小只能备份、重建、灌回去。体检与修复也不是万能的,元数据坏了能修,盘片本身坏了还是得换盘。

对常年维护服务器和存储的人来说,这套工具的顺手之处在于颗粒度:看一个字段、清一个配额、验一段元数据,都有一条对应的命令,能塞进脚本,也能塞进巡检任务。普通用户其实不用碰它,发行版装好系统时已经把它摆在 /usr/sbin 下面了。

xfsprogs 7.2.1 不提供一键式的体验,它提供的是一套边界清晰的手动工具:mkfs 建盘、xfs_repair 离线修复、xfs_growfs 在线扩容、xfs_scrub 在线体检,再加上配额、元数据镜像与调试命令。7.x 系列把配置文件与后台修复服务补齐之后,这套工具在自动化脚本里也更好用了。

XFS下载地址
支持的操作系统: Linux