百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

IBM服务器raid5崩溃数据恢复方案及过程

yuyutoo 2025-04-09 22:22 10 浏览 0 评论

IBM X3850服务器,5块SAS硬盘,其中4块组成一个RAID5,另一块作为热备盘(Hot-Spare),3号盘早已经离线,但热备盘未自动激活rebuild(原因不明),之后2号盘离线,RAID崩溃。操作系统为linux redhat 5.3,应用系统为构架于oracle的一个oa,数据重要,时间很急,用户要求尽可能数据恢复+操作系统复原。

经工程师分析检测发现热备盘完全无启用,硬盘无明显物理故障,无明显同步表现。这种情况数据通常可恢复。以下是工程师给出的恢复方案:

【恢复方案】

保护原环境,关闭服务器,确保在恢复过程中不再开启服务器。将故障硬盘标好序号,确保在拿出槽位后可以完全复原。将故障硬盘挂载至北亚数据恢复备份服务器环境下,对所有故障硬盘做完全镜像。备份完成后交回原故障盘,之后的恢复操作直到数据确认无误前不再涉及原故障盘。

对备份盘进行RAID结构分析,得到其原来的RAID级别,条带规则,条带大小,校验方向,META区域等。根据得到的RAID信息搭建一组虚拟的RAID5环境。进行虚拟磁盘及文件系统解释。检测虚拟结构是否正确,如不正确,重复上述过程。

确定数据无误后,按用户要求回迁数据。如果仍然使用原盘,需确定已经完全对原盘做过备份后,重建RAID,再做回迁。可以在故障服务器上用另外硬盘安装一个回迁用的操作系统,再进行扇区级别的回迁。

【数据恢复操作过程】

1、对原硬盘进行完整镜像,镜像后发现2号盘有10-20个坏扇区,其余磁盘,均无坏道。

2、分析结构:得到的最佳结构为0,1,2,3盘序,缺3号盘,块大小512扇区,backward parity(Adaptec)。

3、组好后数据验证,200M以上的最新压缩包解压无报错,确定结构正确。

4、直接按此结构生成虚拟RAID到一块单硬盘上,打开文件系统无明显报错。

5、确定备份包安全的情况下,经客户同意后,对原盘重建RAID,重建时已经用全新硬盘更换损坏的2号盘。将恢复好的单盘用USB方式接入故障服务器,再用linux SystemRescueCd启动故障服务器,之后通过dd命令进行全盘回写。

【系统复原过程】

dd所有数据后,启动操作系统,无法进入,报错信息为:/etc/rc.d/rc.sysinit:Line 1:/sbin/pidof:Permission denied

怀疑此文件权限有问题,用SystemRescueCd重启后检查,此文件时间,权限,大小均有明显错误,显然节点损坏。

重新分析重组数据中的根分区,定位出错的/sbin/pidof/datahf.net,发现问题因2号盘坏道引起。

使用0,1,3这3块盘,针对2号盘的损坏区域进行xor补齐。补齐后重新校验文件系统,依然有错误,再次检查inode表,发现2号盘损坏区域有部分节点表现为(图中的55 55 55部分):

很明显,虽然节点中描述的uid还正常存在,但属性,大小,以最初的分配块全部是错误的。按照所有可能进行分析,确定无任何办法找回此损坏节点。只能希望修复此节点,或复制一个相同的文件过来。

对所有可能有错的文件,均通过日志确定原节点块的节点信息,再做修正。

修正后重新dd根分区,执行fsck -fn /dev/sda5/datahf.net,进行检测,依然有报错,如下图:

根据提示,在系统中发现有多个节点共用同样的数据块。按此提示进行底层分析,发现,因3号盘早掉线,不存在节点信息的新旧交集。

按节点所属的文件进行区别,清除错误节点后,再次执行fsck -fn /dev/sda5,依然有报错信息,但已经很少。根据提示,发现这些节点多位于doc目录下,不影响系统启动,于是直接fsck -fy /dev/sda5/datahf.net强行修复。修复后,重启系统,成功进入桌面。启动数据库服务,启动应用软件,一切正常,无报错。到此,数据恢复及系统回迁工作完成。

相关推荐

Python操作Word文档神器:python-docx库从入门到精通

Python操作Word文档神器:python-docx库从入门到精通动动小手,点击关注...

Python 函数调用从入门到精通:超详细定义解析与实战指南 附案例

一、函数基础:定义与调用的核心逻辑定义:函数是将重复或相关的代码块封装成可复用的单元,通过函数名和参数实现特定功能。它是Python模块化编程的基础,能提高代码复用性和可读性。定义语法:...

等这么长时间Python背记手册终于来了,入门到精通(视频400集)

本文毫无套路!真诚分享!前言:无论是学习任何一门语言,基础知识一定要扎实,基础功非常的重要,找一个有丰富编程经验的老师或者师兄带着你会少走很多弯路,你的进步速度也会快很多,无论我们学习的目的是什么,...

图解Python编程:从入门到精通系列教程(附全套速查表)

引言本系列教程展开讲解Python编程语言,Python是一门开源免费、通用型的脚本编程语言,它上手简单,功能强大,它也是互联网最热门的编程语言之一。Python生态丰富,库(模块)极其丰富,这使...

Python入门教程(非常详细)从零基础入门到精通,看完这一篇就够

本书是Python经典实例解析,采用基于实例的方法编写,每个实例都会解决具体的问题和难题。主要内容有:数字、字符串和元组,语句与语法,函数定义,列表、集、字典,用户输入和输出等内置数据结构,类和对象,...

Python函数全解析:从入门到精通,一文搞定!

1.为什么要用函数?函数的作用:封装代码,提高复用性,减少重复,提高可读性。...

Python中的单例模式:从入门到精通

Python中的单例模式:从入门到精通引言单例模式是一种常用的软件设计模式,它保证了一个类只有一个实例,并提供一个全局访问点。这种模式通常用于那些需要频繁创建和销毁的对象,比如日志对象、线程池、缓存等...

【Python王者归来】手把手教你,Python从入门到精通!

用800个程序实例、5万行代码手把手教你,Python从入门到精通!...

Python从零基础入门到精通:一个月就够了

如果想从零基础到入门,能够全职学习(自学),那么一个月足够了。...

Python 从入门到精通:一个月就够了

要知道,一个月是一段很长的时间。如果每天坚持用6-7小时来做一件事,你会有意想不到的收获。作为初学者,第一个月的月目标应该是这样的:熟悉基本概念(变量,条件,列表,循环,函数)练习超过30个编...

Python零基础到精通,这8个入门技巧让你少走弯路,7天速通编程!

Python学习就像玩积木,从最基础的块开始,一步步搭建出复杂的作品。我记得刚开始学Python时也是一头雾水,走了不少弯路。现在回头看,其实掌握几个核心概念,就能快速入门这门编程语言。来聊聊怎么用最...

神仙级python入门教程(非常详细),从0到精通,从看这篇开始!

python入门虽然简单,很多新手依然卡在基础安装阶段,大部分教程对一些基础内容都是一带而过,好多新手朋友,对一些基础知识常常一知半解,需要在网上查询很久。...

Python类从入门到精通,一篇就够!

一、Python类是什么?大家在生活中应该都见过汽车吧,每一辆真实存在、能在路上跑的汽车,都可以看作是一个“对象”。那这些汽车是怎么生产出来的呢?其实,在生产之前,汽车公司都会先设计一个详细的蓝图...

学习Python从入门到精通:30天足够了,这才是python基础的天花板

当年2w买的全套python教程用不着了,现在送给有缘人,不要钱,一个月教你从入门到精通1、本套视频共487集,本套视频共分4季...

30天Python 入门到精通(3天学会python)

以下是一个为期30天的Python入门到精通学习课程,专为零基础新手设计。课程从基础语法开始,逐步深入到面向对象编程、数据处理,最后实现运行简单的大语言模型(如基于HuggingFace...

取消回复欢迎 发表评论: