服务器数据恢复—raid5热备盘未激活崩溃导致上层oracle数据丢失的数据恢复案例

news2024/11/15 13:38:49

服务器数据恢复环境:
某品牌X系列服务器,4块SAS硬盘组建了一组RAID5阵列,还有1块磁盘作为热备盘使用。服务器上层安装的linux操作系统,操作系统上部署了一个基于oracle数据库的OA(oracle已经不再为该OA系统提供后续服务支持)。

服务器故障:
raid5中一块磁盘离线,热备盘未自动激活rebuild(原因不明)。服务器在运行一段时间后,另一块磁盘离线,RAID5阵列崩溃。用户方要求尽可能恢复服务器操作系统和服务器中的数据。
将故障服务器中所有磁盘编号后取出,硬件工程师检测后没有发现有磁盘(包括离线的2块磁盘和热备盘)存在明显的物理故障。热备盘完全没有启用,无明显同步表现。

服务器数据恢复方案:
1、将所有磁盘以只读方式进行扇区级的全盘镜像,镜像完成后将所有磁盘按照编号还原到原服务器中,后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析RAID5结构,获取到RAID5条带规则、条带大小、校验方向、META区域等raid结构相关信息。
3、根据获取到的RAID结构信息虚拟重构RAID5。
4、解释虚拟磁盘及文件系统。
5、检测重构的raid5结构是否正确,如不正确,重复2-4过程。
6、检测raid5结构没有问题以及数据无误后,按用户要求回迁数据。

服务器数据恢复过程:
1、在对故障服务器中磁盘做镜像时,发现后离线的那块磁盘有十几个坏扇区,其余磁盘没有发现有坏道。
2、基于镜像文件分析获取raid5结构相关信息。

3、根据获取到的raid结构信息虚拟重组raid5,重组完成后验证数据,发现200M以上的压缩包解压没有报错,由此可以确定分析出来的raid5结构正确。
4、按照该raid5结构生成虚拟RAID到一块单硬盘上,打开文件系统没有出现报错。
5、确定备份包没有问题和经过用户方的同意后,用新硬盘更换存在坏扇区的那块磁盘,然后对原盘重建RAID。
6、将恢复好的单盘用USB方式接入故障服务器,用linux SystemRescueCd启动故障服务器,然后使用dd命令进行全盘回写。
7、dd所有数据后,启动操作系统,无法进入操作系统桌面并出现报错,报错信息为:“/etc/rc.d/rc.sysinit:Line 1:/sbin/pidof:Permission denied”,北亚企安数据恢复工程师初步判断此文件权限有问题。用SystemRescueCd重启后检查,发现此文件时间、权限、大小均有明显错误,很显然节点损坏。
8、重新分析重组数据中的根分区,定位出错的/sbin/pidof/,发现出错是由磁盘坏道导致的。
9、北亚企安数据恢复工程师使用3块完好的磁盘对后离线、存在坏道的那块磁盘的损坏区域进行xor补齐。补齐后重新校验文件系统依然有错误。再次检查inode表,发现后离线、存在坏道的磁盘的损坏区域有部分节点表现为(55 55 55部分):

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

12、根据报错提示,在系统中发现有多个节点共用同样的数据块。按照提示分析底层,发现存在节点信息的新旧交集。
13、按节点所属的文件进行区别,清除错误节点后,再次执行fsck -fn /dev/sda5进行检测,依然有极少量的报错信息。根据报错提示,发现这些节点多位于doc目录下,不影响系统启动。直接执行fsck -fy /dev/sda5/强行修复。
14、修复完成后重启系统,成功进入操作系统桌面。
15、启动oracle数据库服务,启动应用软件,一切正常,无报错。
16、用户方对操作系统,oracle数据库以及OA数据进行检测,经过多部门的反复检测,确认恢复数据完整可用。本次数据恢复工作完成。

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

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

相关文章

域名、DNS 和 IP是什么?网站搭建的必备知识,一文搞定

在正式进行WordPress站点搭建前,有一些最基础的知识是必备的,这篇文章会详细介绍给大家。 一、域名、DNS和IP的关系 域名、DNS和IP是互联网上的三个重要的概念,它们之间有着密切的联系,也影响着我们访问网站的方式和效果。接下来…

GPM降水数据下载-Linux系统上使用wget

Linux 上如何下载GPM降水数据 图片来自:https://disc.gsfc.nasa.gov/datasets/GPM_3IMERGHHL_06/summary?keywordsGPM 这里以GPM30min降水数据为例, GPM下载链接 如果进不去,可能需要在这个网址上先注册个账户,这里不做介绍。 …

【C语言】printf()函数详解,手把手教你,保姆级!!!

目录 基本用法 printf()函数--占位符 占位符大全 printf()函数--限定宽度 printf()函数--正负--限定小数 printf()函数--输出部分字符串 总结 【C语言】printf()函数详解,手把手教你,保姆级!!! 基本用法 printf()…

物联网终端设备众多,为何遥测终端机备受瞩目?

遥测终端机是一种用于数据采集、远程传输、数据存储与处理的综合体设备,已逐渐成为现代智能物联领域的焦点。遥测终端机集成了多种传感器与通信模块,能够实时采集各种环境参数,如温度、湿度、压力、流量等,同时支持无线通信&#…

c语言->浅学结构体

系列文章目录 文章目录 前言 ✅作者简介:大家好,我是橘橙黄又青,一个想要与大家共同进步的男人😉😉 🍎个人主页:橘橙黄又青_C语言,函数,指针-CSDN博客 目的:学习结构体基础内容&am…

在qemu平台使用gdb调试程序

1、使用gdb在qemu上调试程序 1.1、第一步:在qemu上运行程序并开启gdb server qemu-system-riscv64 -nographic -machine virt -m 128M -smp 1 -kernel …/bin/test.elf -s -S 1.2、第二步:使用gdb客户端连接gdb server -x:指定gdb的配置文件…

QEMU源码全解析 —— virtio(2)

接前一篇文章: 本文内容参考: 《趣谈Linux操作系统》 —— 刘超,极客时间 《QEMU/KVM》源码解析与应用 —— 李强,机械工业出版社 特此致谢! 上一回对于virtio进行了简介,并说明了其基本原理以及框架。对…

大创项目推荐 深度学习 python opencv 实现人脸年龄性别识别

文章目录 0 前言1 项目课题介绍2 关键技术2.1 卷积神经网络2.2 卷积层2.3 池化层2.4 激活函数:2.5 全连接层 3 使用tensorflow中keras模块实现卷积神经网络4 Keras介绍4.1 Keras深度学习模型4.2 Keras中重要的预定义对象4.3 Keras的网络层构造 5 数据集处理训练5.1 …

玩转树莓派之系统安装篇

介绍 树莓派是树莓派基金会下的一个明星产品(单板计算机),已经迭代到第五代了;它性能强大、开源、拓展性强、体积小,搞物联网开发的人基本都听说过这个玩意!笔者手上刚好有一块4B的板子,让我们…

动态通讯录(并不难都能拿下)

文章目录 🚀前言🚀通讯录实现动态通讯录的初期准备模块化框架搭建 🚀实现接口函数 🚀前言 铁子们好啊!今天咱们来整一个有意思的玩意——通讯录,相信大家对通讯录并不陌生,那接下来就跟着阿辉把…

Linux--LAMP 平台部署及应用

5.1 LAMP平台概述 LAMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词,具体包括Linux操作系统,Apache 网站服务器、MySQL数据库服务器&…

互联网加竞赛 python+opencv+机器学习车牌识别

0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 基于机器学习的车牌识别系统 🥇学长这里给一个题目综合评分(每项满分5分) 难度系数:4分工作量:4分创新点:3分 该项目较为新颖,适…

EnlightenGAN论文阅读笔记

EnlightenGAN论文阅读笔记 论文是2019年IEEE的EnlightenGAN: Deep Light Enhancement without Paired Supervision.这篇论文是低光增强领域无监督学习的开山之作。 论文链接如下:arxiv.org/pdf/1906.06972.pdf 文章目录 EnlightenGAN论文阅读笔记出发点**出发点1**&…

linux应用程序直接return与exit的区别

在Linux应用程序中,可以使用return语句直接从main函数返回。这将导致程序终止并返回给操作系统。然而,有时候使用exit函数比直接使用return语句更有优势,以下是一些原因: 清理资源:exit函数可以确保在程序终止之前执行…

Aurora8B10B(二) 从手册和仿真学习Aurora8B10B

一. 简介 在上篇文章中,主要结合IP配置界面介绍了一下Aurora8B10B,这篇文章将结合文档来学习一下Aurora8B10B内部的一些细节 和 相关的时序吧。文档主要是参考的是这个 pg046-aurora-8b10b-en-us-11.1 二. Aurora8B10B内部细节 在手册上,对…

pytorch中数据预处理模块:transforms详解

1 tranforms概述 1.1 torchvision介绍 torchvision是pytorch的计算机视觉工具包,主要有以下三个模块: torchvision.transforms:提供了常用的一系列图像预处理方法,例如数据的标准化,中心化,旋转&#xff…

设计模式——外观模式(结构型)

引言 外观模式是一种结构型设计模式, 能为程序库、 框架或其他复杂类提供一个简单的接口。 ​ 问题 假设你必须在代码中使用某个复杂的库或框架中的众多对象。 正常情况下, 你需要负责所有对象的初始化工作、 管理其依赖关系并按正确的顺序执行方法等。…

记录 | 不限速下载vscode

在下载 vscode 的时候往往会遇到一个问题就是下载的贼慢 下面教不限速下载的方式 将下面红框内的内容进行替换 替换为: vscode.cdn.azure.cn然后你会发现下载速度就起飞了

开辟“护眼绿洲”,荣耀何以为师?

文 | 智能相对论 作者 | 佘凯文 俗话说,眼睛是心灵的窗户,可如今,人们对于这扇“窗户”的保护,似乎越来越不重视。 据人民日报今年发布的调查显示,中国眼病患病人数2.1亿,近视患者人数多达6亿&#xff0…