news 2026/4/3 4:18:33

超融合环境 CentOS 7.9 磁盘损坏修复实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
超融合环境 CentOS 7.9 磁盘损坏修复实战

0. 问题背景:120 秒的“死亡之吻”

在超融合(HCI)架构中,当存储网络发生微秒级的抖动,上层虚拟机可能感知到的是长达120s的 I/O 阻塞。

  • 报错关键词INFO: task postmaster:2345 blocked for more than 120 seconds
  • 后果:数据库进程(PostgreSQL)强制挂起,XFS 文件系统元数据在内存与磁盘的非同步状态下崩溃。

1. 修复全流程:从标准操作到异常应对

阶段一:进入救援 Shell

【标准命令】
在 GRUB 菜单按e,在linux16行末添加rd.break,按Ctrl+X启动。

【遇到的异常 1】:无法输入任何命令,或者提示文件系统只读。

  • 原因:紧急模式默认挂载/sysroot为只读。
  • 极限拉扯
mount-o remount,rw /sysroot

阶段二:寻找“失踪”的逻辑卷

【标准命令】
尝试修复根分区:xfs_repair -L /dev/mapper/centos-root

【遇到的异常 2】:执行修复时,发现fstab中定义的/home(即报错中的dm-2) 在/dev/mapper/彻底消失了。

  • 原因:HCI 环境下的 LVM 元数据未在 initramfs 阶段自动激活。
  • 极限拉扯
# 强制激活所有逻辑卷lvm vgchange -ay# 强制重新生成设备节点(如果还看不见 dm-2)lvm vgmknodes# 此时再次 ls /dev/mapper/ 才会出现 centos-home

阶段三:修复命令的“断粮”危机

【标准命令】
修复所有分区并创建.autorelabel文件。

【遇到的异常 3】:输入touch /sysroot/.autorelabel提示-bash: touch: command not found

  • 原因:救援环境极其简陋,很多常用二进制工具未打包。
  • 极限拉扯(利用 Shell 重定向特性):
# 既然没有 touch,就用重定向“空”创建一个文件>/sysroot/.autorelabel# 检查确认ls-a /sysroot/|grep.autorelabel

阶段四:突破“进度条”的死循环

【标准命令】
退出救援模式重启。

【遇到的异常 4】:重启后系统依然卡在progress polling进度条,或者 GNOME 图形界面转圈。

  • 原因
  1. xfs_repair -L强制清空日志后,SELinux 标签不一致导致启动被拦截。
  2. 底层存储响应依然缓慢,无法支撑图形界面(GDM)的重型加载。
  • 极限拉扯
    再次进入 GRUB,删除rhgb quiet,并添加:
    3 selinux=0
  • 3:直接进 Runlevel 3(字符模式),减小 I/O 压力。
  • selinux=0:强行拆掉权限门禁。

2. 异常与对策速查表 (Cheat Sheet)

遇到的异常现象背后隐藏的真相解决的“救命命令”
修复时找不到设备路径LVM 卷组在紧急模式下未激活lvm vgchange -ay && vgmknodes
xfs_repair提示设备忙分区已被自动挂载umount /dev/mapper/xxx
touch/lvs命令不存在Initramfs 环境路径不全使用lvm lvs或重定向> 文件名
修完磁盘依然进不去系统SELinux 标签错乱或 GUI 卡死GRUB 加入3 selinux=0并删rhgb

3. 深度优化:为什么这台机器需要特别对待?

在这台 DB 服务器的拉扯中,最核心的教训是:不能依赖系统的自动引导

  1. 分区的联动性:虽然报错是dm-0,但因为/home分区(dm-2)在同一个存储池,底层存储抖动会造成全盘元数据损坏。必须全盘修复,不能漏掉任何一个挂载点。
  2. HCI 的滞后性:超融合修复后,磁盘响应可能仍有长达数分钟的“预热期”。进入Runlevel 3是给系统留出喘息空间的最佳实践。

4. 下一步:从“活下来”到“跑得稳”

既然现在已经修复,你应该立即执行以下动作进行深度加固:

1. 数据库逻辑一致性体检 (PostgreSQL 专场)

物理修复(xfs_repair -L)意味着“丢掉最后几秒日志”。这对数据库是致命的:

  • 命令:登录数据库执行REINDEX DATABASE your_db;(重建索引)。
  • 检查:使用amcheck扩展检查 B-tree 索引是否断裂。

2. 内核参数永久调优

防止下次 HCI 抖动时 Linux 反应过度。

  • 修改/etc/sysctl.conf
# 允许内核多等一会儿存储,不要轻易认为进程死锁kernel.hung_task_timeout_secs=600

3. 给超融合厂商的“罪证报告”

/var/log/messages中那段blocked for more than 120 seconds的日志截图,并告知他们:由于物理 I/O 链路响应超时,导致上层虚拟机触发了 XFS 元数据强制修复。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/27 3:33:44

用RS6013A实现“呼吸+心跳”实验(含FFT分析)

大家好!今天我要带大家一起,用苏州锐武微电子的RS6013A毫米波雷达,做一个超酷的非接触“呼吸心跳”检测实验。想象一下:你不用贴电极、不用戴胸带,只要安静地坐着,雷达就能隔着衣服精准“听”到你的呼吸和心…

作者头像 李华
网站建设 2026/3/17 12:22:11

Web1 到 Web3 技术演进详解

Web1 到 Web3 技术演进详解 目录 概念总览Web1:只读的万维网Web2:可读可写与平台化Web3:去中心化与价值互联三者对比速查技术栈与协议演进小结 一、概念总览 Web1、Web2、Web3 是对互联网不同发展阶段的一种划分,既包含产品与商…

作者头像 李华
网站建设 2026/3/23 19:59:33

SEW变频器MC31C007-503-4-21 08266395

孙13665068812SEW变频器 MC31C007-503-4-21 08266395 详细介绍1. 概述SEW-Eurodrive 是全球知名的驱动技术供应商,其生产的变频器广泛应用于工业自动化领域。型号 MC31C007-503-4-21 08266395 属于 SEW 的 MOVIMOT 系列变频器,是一款集成了变频驱动和减速…

作者头像 李华
网站建设 2026/3/23 8:40:13

百考通AI:智能数据分析,让数据洞察变得简单高效!

在数据驱动决策的时代,数据分析已成为企业运营、学术研究、市场调研不可或缺的核心能力。然而,面对海量数据,许多专业人士却陷入"有数据无洞察"的困境——统计方法复杂难懂、分析流程繁琐耗时、结果呈现不够直观,导致宝…

作者头像 李华
网站建设 2026/3/13 7:20:00

.NET每日面试题-简述CLR垃圾回收原理

.NET每日面试题-简述CLR垃圾回收原理 在.NET开发面试中,“CLR垃圾回收(GC,Garbage Collection)原理”是高频核心考点——它不仅能考察开发者对.NET运行时底层的理解深度,更能反映其对内存管理、性能优化的认知能力。很…

作者头像 李华
网站建设 2026/3/29 6:28:14

‌对抗鲁棒性测试:3D点云攻击在自动驾驶感知系统的防御工具‌

一、行业痛点:为何3D点云防御工具成为测试焦点 自动驾驶感知系统面临的新型威胁中,3D点云对抗攻击因高隐蔽性和物理可实现性引发业界警惕。攻击者通过微扰点云坐标(如生成“幽灵障碍物”或篡改物体形状),可导致激光雷…

作者头像 李华