服务器数据恢复—热备盘未激活导致硬盘掉线的raid5阵列崩溃的数据恢复案例

服务器数据恢复环境:
某品牌X3850服务器中有一组由数块SAS硬盘组建的RAID5阵列,该阵列中有一块盘是热备盘。操作系统为linux redhat,上面跑着一个基于oracle数据库的oa。

服务器故障:
服务器raid5阵列中有一块硬盘离线,但是热备盘没有成功激活,之后另外一块硬盘离线,RAID崩溃。

服务器数据恢复过程:
1、将故障服务器中所有硬盘标记后取出,硬件工程师检测后没有发现存在硬件故障的硬盘。将所有硬盘以只读方式进行扇区级全盘镜像,镜像过程中发现较后掉线的那块盘上存在少量坏扇区,其余磁盘均没有发现无坏道。
2、基于镜像文件分析所有磁盘底层数据,找到重组raid所需要的相关信息。

3、根据上述获取到的raid结构相关信息(RAID级别,条带规则,条带大小,校验方向,META区域等)重组raid,重组完成后进行数据验证,发现200M以上的最新压缩包解压正常,判断该raid结构信息没有问题。
4、按照该结构生成RAID到一块单硬盘上,打开文件系统无明显报错。
5、在确定备份没有问题后,经用户方授权,对原盘重建RAID。重建时已经用全新硬盘更换发现坏道的后掉线的那块盘。
6、将恢复好的单盘接入故障服务器,用linux SystemRescueCd启动故障服务器并通过dd命令进行全盘回写。
7、回写完成后启动操作系统,无法进入操作系统并且报错,报错信息为:/etc/rc.d/rc.sysinit:Line 1:/sbin/pidof:Permission denied,怀疑该文件权限有问题。用SystemRescueCd重启后检查,发现此文件时间,权限,大小均有明显错误,显然节点损坏。
8、分析重组数据中的根分区,定位出错的/sbin/pidof,发现问题是由于后掉线硬盘上的坏道导致的。
9、使用其他几块完好的硬盘针对后离线磁盘的损坏区域进行xor补齐。补齐后重新校验文件系统,依然有错误。再次检查inode表,发现这块盘损坏区域有部分节点表现异常。

虽然节点中描述的uid还正常存在,但属性、大小、最初的分配块全部错误。按照所有可能性进行分析后,确定无法找回此损坏节点。只能希望能够修复此节点,或复制一个相同的文件过来。
10、针对所有可能有错的文件,北亚企安数据恢复工程师通过日志确定原节点块的节点信息,然后做修正。
11、修正后重新dd根分区,执行fsck -fn /dev/sda5进行检测,依然报错。

根据提示检查发现在系统中发现有多个节点共用同样的数据块。按此提示分析底层,发现因为有一块盘很早掉线,所以存在节点信息的新旧交集。
12、按照节点所属的文件进行区别,清除错误节点后,再次执行fsck -fn /dev/sda5,依然有报错信息,但已经很少。根据提示,发现这些节点多位于doc目录下,不影响系统启动,于是执行fsck -fy /dev/sda5强行修复。
13、修复后,重启系统,成功进入桌面。启动数据库服务,启动应用软件,一切正常,无报错。用户方检测后,认可数据恢复结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/61637.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Eclipse 创建Dynamic web project项目-配置Tomcat服务器

1、new——>project: 2、选择web的 Dynamic web project项目: 3、 项目命名,选择new runtime(没有部署过web项目,一般tartget runtime选项里面是空的): 4、完成1、2的路径选择: 5、完成两个选项操作后,点击finish &…

✅✅✅【Vue.js】sd.js基于jQuery Ajax最新原生完整版for凯哥API版本

api.js //封装ajax方法 import $g from "../sg";//vue项目使用 import $ from jquery;//(提示:原生开发页面请前往https://jquery.com下载最新版jQuery) import { Message } from "element-ui";//element项目使用 // import axios from "…

理解折半查找法

理解折半查找法:高效的查找算法 折半查找法(又称二分查找法)是一种高效的查找算法,用于查找一个已排序数组中的目标元素。与线性查找方法不同,折半查找每次都将搜索范围减半,从而大幅提升查找效率。本文将详…

解决前端页面报错:Not allowed to load local resource

在前后端分离项目中,在前端页面里使用file://的绝对路径访问本地图片,在加载图片的 时候会报出Not allowed to load local resource 的错误。 这是因为浏览器出于安全因素,禁止通过绝对路径访问图片,需要通过虚拟路径进行访问。 …

VM虚拟机装MAC后无法联网,如何解决?

✨在vm虚拟机上,给虚拟机MacOS设置网络适配器。选择NAT模式用于共享主机的IP地址 ✨在MacOS设置中设置网络 以太网 使用DHCP ✨回到本地电脑上,打开 服务,找到VMware DHCP和VMware NAT,把这两个服务打开,专一般问题就…

力扣 LeetCode 236. 二叉树的最近公共祖先(Day10:二叉树)

解题思路: 后序遍历 注意: p和q其中一个就是它们的公共祖先的情况也考虑到了,假设q是公共祖先,遇到q就直接返回,相当于是下面一边为空,一边不为空的情况,返回不为空就一边即可 class Solutio…

前端速通(HTML)

1. HTML HTML基础&#xff1a; 什么是HTML&#xff1f; 超文本&#xff1a; "超文本"是指通过链接连接不同网页或资源的能力。HTML支持通过<a>标签创建超链接&#xff0c;方便用户从一个页面跳转到另一个页面。 标记语言&#xff1a; HTML使用一组预定义的标签…

python语言基础-5 进阶语法-5.4 正则表达式

声明&#xff1a;本内容非盈利性质&#xff0c;也不支持任何组织或个人将其用作盈利用途。本内容来源于参考书或网站&#xff0c;会尽量附上原文链接&#xff0c;并鼓励大家看原文。侵删。 5.4 正则表达式 5.4.1 正则表达式 正则表达式的概念&#xff1a; 正则表达式是用来…

论文阅读——Performance Evaluation of Passive Tag to Tag Communications(一)

文章目录 摘要一、互耦对监听器标签输入阻抗的影响A. 无限细偶极子互阻抗的理论研究B. 电细偶极子的情况&#xff1a;理论与模拟C. 印刷偶极子的情况&#xff1a;电磁模拟与测量 二、T2T 通信系统的性能评估总结 论文来源&#xff1a;https://ieeexplore.ieee.org/document/970…

Palo Alto Networks PAN-OS身份认证绕过漏洞复现(CVE-2024-0012)

0x01 产品描述: PAN-OS 是运行 Palo Alto Networks 下一代防火墙的软件。通过利用 PAN-OS 本机内置的关键技术(App-ID、Content-ID、设备 ID 和用户 ID),可以在任何时间、任何地点完全了解和控制所有用户和设备中正在使用的应用程序。0x02 漏洞描述: PAN-OS 设备管理 Web …

使用ENSP实现静态路由

一、双路由器静态路由 1.项目拓扑 2.项目实现 (1)路由器AR1配置 进入系统试图 sys将路由器命名为R1 sysname R1进入g0/0/0接口 int g0/0/0将g0/0/0接口IP地址配置为1.1.1.1/24 ip address 1.1.1.1 24进入g0/0/1接口 int g0/0/1将g0/0/1接口IP地址配置为192.168.1.1/24 ip ad…

版本控制和idea简体中文教程

版本控制是一种管理软件开发过程中代码变更的技术。它允许多个开发者协作编辑同一个项目&#xff0c;同时跟踪每个变更的历史记录&#xff0c;以便在需要时恢复到之前的版本。版本控制系统&#xff08;Version Control System, VCS&#xff09;是实现版本控制的具体工具。 16.…

自制游戏:监狱逃亡

第一个游戏&#xff0c;不喜勿喷&#xff1a; #include<bits/stdc.h> #include<windows.h> using namespace std; int xz; int ruond_1(int n){if(xz1){printf("撬开了&#xff0c;但站在你面前的是俄罗斯内务部特种部队的奥摩大帝&#xff0c;你被九把加特…

Claude3.5-Sonnet和GPT-4o怎么选(附使用链接)

随着人工智能模型的不断进化&#xff0c;传统的评估标准已经逐渐变得陈旧和不再适用。以经典的“喝水测试”为例&#xff0c;过去广泛应用于检测模型能力&#xff0c;但现如今即便是国内的一些先进模型&#xff0c;也能够轻松答对这些简单的问题。因此&#xff0c;我们亟需引入…

uniapp+vue3+ts H5端使用Quill富文本插件以及解决上传图片反显的问题

uniappvue3ts H5端使用Quill富文本插件以及解决上传图片反显的问题 1.在项目中安装Quill npm i quill1.3.72.需要显示富文本的页面完整代码 <template><view><div ref"quillEditor" style"height: 65vh"></div></view> &…

QML —— 3种等待指示控件(附源码)

效果如下 说明 BusyIndicator应用于指示在加载内容或UI被阻止等待资源可用时的活动。BusyIndicator类似于一个不确定的ProgressBar。两者都可以用来指示背景活动。主要区别在于视觉效果,ProgressBar还可以显示具体的进度(当可以确定时)。由于视觉差异,繁忙指示器和不确定的…

数字后端零基础入门系列 | Innovus零基础LAB学习Day11(Function ECO流程)

###LAB 20 Engineering Change Orders (ECO) 这个章节的学习目标是学习数字IC后端实现innovus中的一种做function eco的flow。对于初学者&#xff0c;如果前面的lab还没掌握好的&#xff0c;可以直接跳过这节内容。有时间的同学&#xff0c;可以熟悉掌握下这个flow。 数字后端…

Swift从0开始学习 协议和扩展 day5

协议:定义行为的契约 协议类似于其他语言中的接口。它们定义了一组方法、属性或其他需求,供结构体、类、枚举等类型去遵循和实现。协议并不实现这些需求,而是作为一种约定或合同,确保实现协议的类型会遵循特定的行为。 协议的定义和遵循 在 Swift 中,使用 protocol 关键…

R语言绘图过程中遇到图例的图块中出现字符“a“的解决方法

R语言绘图过程中遇到图例的图块中出现字符的解决方法 因为我遇到这个问题的时候没在网上找到合适的方法&#xff0c;找到个需要付费的&#xff0c;算了。也许是因为问的方式不同&#xff0c;问了半天AI也回答出来&#xff0c;莫名有些烦躁&#xff0c;打算对代码做个分析&…

云服务器部署WebSocket项目

WebSocket是一种在单个TCP连接上进行全双工通信的协议&#xff0c;其设计的目的是在Web浏览器和Web服务器之间进行实时通信&#xff08;实时Web&#xff09; WebSocket协议的优点包括&#xff1a; 1. 更高效的网络利用率&#xff1a;与HTTP相比&#xff0c;WebSocket的握手只…