案例_XFS文件系统故障处理方法

案例:某客户服务器因机房断电,导致多台设备无法进入 Linux 操作系统,报错 XFS 文件系

统损坏。如图:


故障原因:

维护 Linux 服务器时会面临这样一种错误,即显示文件系统变成(Read Only System),即

文件系统变成只读的方式,产生这一问题的原因可能有两种,一种是多机写入时同步机制出

现问题,另一种方式是单机写入时出现服务器掉电的情况

而本案例故障演员则为后者:单机写入时出现服务器掉电的情况。


名称解析:

XFS 文件系统:

            文件系统的定义:

                        文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于 NAND Flash

的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。


            xfs 文件系统:

                                是一个日志型文件系统

日志文件系统?加一个日志来记录文件系统的更改,即使在断电或者是操作系

统崩溃的情况下也能保证文件系统一致性

怎么保持的?

要向磁盘写数据的时候,肯定要改变元数据,日志就要在这之前记录要怎么去

改元数据的,当发生异常掉电或者文件系统崩溃后,进行修复时会检查文件系统的一致性,

当出现不一致时,可通过它来恢复。


故障处理方法:

第一步:使用#lsblk 查找挂载路径,用#umount 将其卸载;确保分区处于 umount 状态

(xfs_check /dev/sdb(盘符); echo $?返回 0 表示正常),进行下一步;


第二步:检测文件系统是否损坏:执行 xfs_repair -n,检查文件系统是否损坏。


第三步:修复文件系统:

xfs_repair /dev/sdb 以本案例为例。

注: XFS 文件系统在异常断电后发生文件系统报错概率很高。若仅仅因为断电导致文件系统

报错,通常是可以通过命令修复的。执行以上 repair 操作不会对数据产生进一步损坏风险,

如发生修复失败是由于文件系统损坏严重,而不是此操作导致


第四步:强制修复(会造成文件丢失,需要与客户说明数据安全&得到客户允许下才能操作。)

先执行 xfs_repair -L /dev/sdb(清空日志,会丢失文件),再执行 xfs_repair

/dev/sdb,再执行 xfs_check /dev/sdb 检查文件系统是否修复成功


说明:-L 是修复 xfs 文件系统的最后手段,慎重选择,它会清空日志,会丢失用户数据和文

件。


备注:在执行 xfs_repair 操作前,最好使用 xfs_metadump 工具保存元数据,一旦修复失败,

最起码可以恢复到修复之前的状态

注:仅用作经验分享。


参考文献:

https://blog.csdn.net/yuanfang_way/article/details/78700089

https://www.cnblogs.com/yuzhaoxin/p/4083582.html

你可能感兴趣的:(案例_XFS文件系统故障处理方法)