服务器数据恢复—EVA存储raid5硬盘离线的数据恢复案例

2024-01-24 14:52

本文主要是介绍服务器数据恢复—EVA存储raid5硬盘离线的数据恢复案例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

服务器数据恢复环境:
某品牌EVA某型号存储,底层是RAID5阵列,划分了若干lun。

服务器故障&分析:
该存储设备中raid5阵列有两块硬盘掉线,存储中的lun丢失。
将故障服务器存储中的所有磁盘编号后取出,硬件工程师检测后发现掉线硬盘不存在物理故障,也没有发现坏道,都可以正常读取数据。
掉线硬盘经过检测没有发现有物理故障,可以初步判断硬盘掉线是因为硬盘读写不稳定,本案例中EVA存储中所采用的raid控制器通常会将读写不稳定的硬盘判断为坏盘并踢出阵列。由于raid5的特性,掉线硬盘超过了2块后就会导致阵列崩溃。
EVA存储中每个LUN都有一份LUN_MAP,EVA存储将LUN_MAP分别存放在不同的磁盘中,通过一个索引来指定其位置。因此在每个磁盘中找这个指向LUN_MAP的索引就可以找到LUN的信息了。

服务器数据恢复过程:
1、将故障存储中所有磁盘以只读模式进行扇区级的全盘镜像,镜像完成后将所有磁盘按照编号还原到原存储中。后续的数据分析和数据恢复操作都基于镜像文件进行,避免对原始磁盘数据造成二次破坏。
2、基于镜像文件分析硬盘底层数据。由于LUN的RAID结构是RAID5,只需要将一个LUN的RAID条目通过RAID5的校验算法算出校验值,再和原有的校验值进行比较就可以判断这个条目中是否有掉线盘。将一个LUN的所有LUN_MAP都校验一遍就可以知道这个LUN中有哪些RAID条目中有掉线盘,在RAID条目中都存在的盘一定就是掉线盘。剔除掉掉线盘后就可以根据LUN_MAP恢复所有LUN的数据。
3、北亚企安数据恢复工程师编写扫描程序扫描LUN_MAP,结合人工分析找到正确的LUN_MAP。
4、北亚企安数据恢复工程师编写RAID条目检测程序检测所有LUN中掉线的磁盘,结合人工分析排除掉线磁盘。
5、北亚企安数据恢复工程师编写数据恢复程序,结合LUN_MAP恢复所有LUN数据。人工核对每个LUN,确认是否和用户方描述的一致。
根据用户方工程师的描述,LUN的数据分为2部分:Vmware的虚拟机和HP-UX上的裸设备。裸设备里存放的是Oracle的dbf数据库。由于恢复的是LUN,无法看到里面的文件,因此需要人工核对哪些LUN是Vmware虚拟机,哪些LUN是HP-UX裸设备。核对完成后将不同的LUN挂载到不同的验证环境中验证恢复出来的数据是否完整。
6、验证数据完整性没有问题后,将所有存放vmware虚拟机的LUN中的虚拟机文件都提取出来,然后通过NFS共享的方式挂载到虚拟主机上。
7、通过NFS将所有虚拟机都添加到虚拟主机以后,将所有虚拟机加电开机,都能启动系统。用户方工程师进入到虚拟机内查看数据,经过验证确认虚拟机内的数据没有问题,确认恢复出来的数据完整有效。本次数据恢复工作完成。

这篇关于服务器数据恢复—EVA存储raid5硬盘离线的数据恢复案例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/640040

相关文章

MySQL 中的 JSON 查询案例详解

《MySQL中的JSON查询案例详解》:本文主要介绍MySQL的JSON查询的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录mysql 的 jsON 路径格式基本结构路径组件详解特殊语法元素实际示例简单路径复杂路径简写操作符注意MySQL 的 J

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

springboot上传zip包并解压至服务器nginx目录方式

《springboot上传zip包并解压至服务器nginx目录方式》:本文主要介绍springboot上传zip包并解压至服务器nginx目录方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录springboot上传zip包并解压至服务器nginx目录1.首先需要引入zip相关jar包2.然

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

Python中使用正则表达式精准匹配IP地址的案例

《Python中使用正则表达式精准匹配IP地址的案例》Python的正则表达式(re模块)是完成这个任务的利器,但你知道怎么写才能准确匹配各种合法的IP地址吗,今天我们就来详细探讨这个问题,感兴趣的朋... 目录为什么需要IP正则表达式?IP地址的基本结构基础正则表达式写法精确匹配0-255的数字验证IP地

MySQL高级查询之JOIN、子查询、窗口函数实际案例

《MySQL高级查询之JOIN、子查询、窗口函数实际案例》:本文主要介绍MySQL高级查询之JOIN、子查询、窗口函数实际案例的相关资料,JOIN用于多表关联查询,子查询用于数据筛选和过滤,窗口函... 目录前言1. JOIN(连接查询)1.1 内连接(INNER JOIN)1.2 左连接(LEFT JOI

基于Python打造一个可视化FTP服务器

《基于Python打造一个可视化FTP服务器》在日常办公和团队协作中,文件共享是一个不可或缺的需求,所以本文将使用Python+Tkinter+pyftpdlib开发一款可视化FTP服务器,有需要的小... 目录1. 概述2. 功能介绍3. 如何使用4. 代码解析5. 运行效果6.相关源码7. 总结与展望1

使用Python开发一个简单的本地图片服务器

《使用Python开发一个简单的本地图片服务器》本文介绍了如何结合wxPython构建的图形用户界面GUI和Python内建的Web服务器功能,在本地网络中搭建一个私人的,即开即用的网页相册,文中的示... 目录项目目标核心技术栈代码深度解析完整代码工作流程主要功能与优势潜在改进与思考运行结果总结你是否曾经