记录一次 centos 启动失败

news/2025/1/22 8:27:05/

文章目录

    • 现场1
    • 分析1
    • 现场2
    • 分析2
    • 搜索
    • 实际解决过程

现场1

一次断电,导致 之前能正常启动的centos 7.7 起不来了有部分log , 关键信息如下
[1.332724]	XFS(sda3): Internal error xfs ... at line xxx of fs/xfs/xfs_trans.c
[1.332724]	XFS(sda3): Corruption of in-memory data detected . Shutting down file system
[1.332724]	XFS(sda3): Please unmount the filesystem and rectify the problem(s)
[1.332724]	XFS(sda3): Failed to recover intentsGenerating "/run/initramfs/rdsosreport.txt",不敲了,看图吧

在这里插入图片描述

分析1

上面带 [] 的都是linux内核打出来的 , 看来是 没有 mount 上 磁盘文件系统 , 那必定是 磁盘文件系统出问题了
然后告诉我说 错误信息在 一个 .txt 里
然后又告诉我说 进入了 紧急模式 , 那就好办了.
那就先打开 那个txt 看看 ,  紧急模式提供一个shell ,有基础的工具可用.
然后我们再瞅瞅现场问题
文件要 从后往前看,然后再从前往后看.

现场2

// 具体的信息以及截屏都没有了 , 我就从 这个txt 里面抽出来了这两个关键信息
mount /dev/sda3 on /sysroot failed : Structure needs cleaning
sysroot.mount mount process exited , code=exited status=32 

分析2

// 根据这个现场, 我们发现果然是 /dev/sda 磁盘的 分区3 中的文件系统中出问题了.
// 那么我们有两个思路
// 一个是 磁盘问题 , 找磁盘工具
// 一个是 分区中的文件系统问题, 找文件系统工具.
// 这里 很明显说是 文件系统工具问题

搜索

很明显, 现场2 的 信息更加全面, 我们拿 现场2 中拿到的信息直接搜索 , 然后 万军从中 取 敌将首级
找到了一个比较靠谱的解决方案.
https://www.modb.pro/db/5697011.首先尝试mount和umount文件系统,以便重放日志,修复文件系统,如果不行,再进行如下操作。2. 检查文件系统
做此步之前确保分区处于umount状态
xfs_check /dev/sdd(盘符); echo $?
返回0表示正常3. 执行xfs_repair -n,检查文件系统是否损坏,如何损坏会列出将要执行的操作
执行xfs_repair -n,检查文件系统是否损坏,如何损坏会列出将要执行的操作4. 执行xfs_repair修复文件系统
xfs_repair /dev/mapper/rhel-root (ext系列工具为fsck)5. 最后方法:损失部分数据的修复方法
根据打印消息,修复失败时:先执行xfs_repair -L /dev/mapper/rhel-root(清空日志,会丢失文件),再执行xfs_repair /dev/mapper/rhel-root,再执行xfs_check /dev/mapper/rhel-root 检查文件系统是否修复成功。说明:-L是修复xfs文件系统的最后手段,慎重选择,它会清空日志,会丢失用户数据和文件。备注:在执行xfs_repair操作前,最好使用xfs_metadump工具保存元数据,一旦修复失败,最起码可以恢复到修复之前的状态。检查是否修复成功, 若返回0则表示修复成功echo $?再次挂载/dev/mapper/rhel-root, 若返回0则表示挂载成功mount /dev/mapper/rhel-root /sysroot;echo $?exit退出修复模式若能成功进入系统则修复完成

实际解决过程

我们的分区肯定没有 被挂载(mount)1. 
我直接一个命令下去
mount /dev/sda3 /root
他报错了, 报之前现场中的信息. // 好的,没问题.下面我就开始修理你// mount 和 xfs_repair 是有的      , 要不然这个紧急模式 就做的有些失败了!
// /dev/sda3 肯定也是有的 , 要不然就提示 /dev/sda3 不存在了, 而不是报 /dev/sda3 上的文件系统有错误.2. 
然后我们直接 执行 
xfs_repair /dev/sda3
发现返回失败,  吐出了一些 提示信息,真贴心啊
建议我们 带 -L 选项 ,并说 可能会丢失数据. // 我在乎数据吗? 我在乎的是他能启动 3.
然后直接开干 , 
xfs_repair -L /dev/sda3
跑了一分钟左右,退出了, 看起来打印正常, 但是我不放心
echo $? 一看, 是个0 , OK , 这个命令已经正确完成了4.
"xfs_repair /dev/sda3" 提示信息历历在目, 它建议我在 "xfs_repair -L /dev/sda3" 成功后再 mount 一下//  你开玩笑 , 我如果能 mount 成功,那么 程序("init进程") 肯定能mount成功,我多费事做这个干啥//  而且我初步判定99%的机率能 mount成功5..重启,启动成功

http://www.ppmy.cn/news/1565175.html

相关文章

无人机飞手考证难度增加,实操、地面站教学技术详解

随着无人机技术的快速发展和广泛应用,无人机飞手考证的难度确实在不断增加。这主要体现在对飞手的实操技能和地面站操作技术的要求上。以下是对无人机飞手考证中实操和地面站教学技术的详细解析: 一、实操教学技术详解 1. 无人机基础知识学习&#xff1…

C++17 新的求值顺序规则:小白友好版指南

嘿,C 小白们!今天,我们要聊一个听起来有点枯燥,但实际上超重要的话题——C17 中的求值顺序规则。别急,我会用最通俗易懂的方式,带你一步步搞懂这个知识点,让你在编程路上少走弯路,写…

学习华为熵减模型:激发组织活力(系列之三)

目录 为什么学习华为? 学习华为什么? 一、势:顺势而为,在风口上猪都会飞起来。 二、道:就是认识和利用规律层面,文化和制度创新就是企业经营之道。 三、法:就是一套价值管理的变革方法论。…

【ROS2】☆ launch之Python

☆重点 ROS1和ROS2其中一个很大区别之一就是launch的编写方式。在ROS1中采用xml格式编写launch,而ROS2保留了XML 格式launch,还另外引入了Python和YAML 编写方式。选择哪种编写取决于每位开发人员的爱好,但是ROS2官方推荐使用Python方式编写…

【C++】模板(进阶)

本篇我们来介绍更多关于C模板的知识。模板初阶移步至:【C】模板(初阶) 1.非类型模板参数 1.1 非类型模板参数介绍 模板参数可以是类型形参,也可以是非类型形参。类型形参就是我们目前接触到的一些模板参数。 //类型模板参数 …

利用开源AI智能名片2+1链动模式S2B2C商城小程序满足用户的自恋心理

摘要:随着互联网技术的飞速发展,数字化营销手段层出不穷,为企业提供了前所未有的市场机遇。开源AI智能名片21链动模式与S2B2C商城小程序的结合,正是这一背景下的创新尝试。本文旨在深入探讨如何利用这两种创新工具满足用户的自恋心…

什么是软件架构

什么是软件架构 程序员说,软件架构是要决定编写哪些C程序或OO类、使用哪些库和框架 程序经理说,软件架构就是模块的划分和接口的定义 系统分析员说,软件架构就是为业务领域对象的关系建模 配置管理员说,软件架构就是开发出来的…

【C++】开源:libpcap网络数据捕获库安装与应用

😏★,:.☆( ̄▽ ̄)/$:.★ 😏 这篇文章主要介绍。 无专精则不能成,无涉猎则不能通。——梁启超 欢迎来到我的博客,一起学习,共同进步。 喜欢的朋友可以关注一下,下次更新不迷路🥞 文章目录 :smirk:1. 项目介绍:blush:2. 环境配置:satisfied:3. 使用说明😏1. 项目介绍…