服务器数据恢复-EMC存储raid5磁盘物理故障离线的数据恢复案例

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

服务器数据恢复环境&故障:
一台emc某型号存储服务器,存储服务器上组建了一组raid5磁盘阵列,阵列中有两块磁盘作为热备盘使用。存储服务器在运行过程中有两块磁盘出现故障离线,但是只有一块热备盘激活,最终导致该raid5阵列崩溃,上层应用无法正常使用。

服务器故障检测:
将故障存储服务器中所有磁盘编号后取出,由硬件工程师对两块掉线的硬盘进行物理故障检测,经过检测发现这2块离线的磁盘确实存在物理故障,需要对这2块盘进行物理故障修复后才能进行下一步的数据恢复,存储服务器中其他硬盘经过检测没有发现存在物理故障及坏道。
将故障存储服务器中的完好硬盘以只读方式进行扇区级的全盘镜像。针对存在物理故障的2块磁盘,由硬件工程师进行开盘处理后使用专业工具进行全盘镜像。由于故障存储服务器中所有磁盘的扇区大小为520字节,在进行数据恢复之前需要将所有镜像数据做520字节to512字节的转换。

服务器数据恢复过程:
1、基于镜像文件分析所有磁盘底层数据,经过分析发现故障存储服务器中的两块热备盘是空的,没有写入任何数据,据此推断有一块热备盘虽然上线,但此时raid阵列仍处于缺盘状态,数据并没有开始同步。
2、通过分析底层数据获取到条带大小、磁盘顺序等raid阵列结构基础信息,利用这些信息虚拟重组raid5阵列。
3、由于该型号存储服务器的LUN是基于RAID5阵列的,在raid5阵列重组完成之后,需要分析LUN在RAID阵列中的分配信息以及LUN分配的数据块MAP。
4、根据上一步获取到的信息,使用北亚企安自研程序解释LUN的数据MAP并导出LUN的所有数据。
5、使用北亚企安自研的ZFS文件系统解释程序对生成的LUN做文件系统解释,但是在解释某些文件系统元文件的时候程序报错。开发工程师对该解释程序做debug调试并分析程序报错原因,与此同时,文件系统工程师分析ZFS文件系统是否存在问题。经过数小时的分析与调试,最终确认导致程序无法正常解释ZFS文件系统的原因:ZFS文件系统中某些元文件损坏。对损坏的元文件进行分析,发现ZFS文件系统正在进行I/O操作的时候存储服务器瘫痪,导致部分文件系统元文件损坏。
6、北亚企安数据恢复工程师对损坏的ZFS文件系统元文件进行手工修复,直到ZFS文件系统能够正常解析。
7、对修复后的ZFS文件系统进行解析并验证数据。经过用户方工程师的仔细验证,确认存储服务器内所有数据成功恢复。本次存储服务器数据恢复工作完成。

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



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

相关文章

Linux云服务器手动配置DNS的方法步骤

《Linux云服务器手动配置DNS的方法步骤》在Linux云服务器上手动配置DNS(域名系统)是确保服务器能够正常解析域名的重要步骤,以下是详细的配置方法,包括系统文件的修改和常见问题的解决方案,需要... 目录1. 为什么需要手动配置 DNS?2. 手动配置 DNS 的方法方法 1:修改 /etc/res

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java 中的 equals 和 hashCode 方法关系与正确重写实践案例

《Java中的equals和hashCode方法关系与正确重写实践案例》在Java中,equals和hashCode方法是Object类的核心方法,广泛用于对象比较和哈希集合(如HashMa... 目录一、背景与需求分析1.1 equals 和 hashCode 的背景1.2 需求分析1.3 技术挑战1.4

k8s搭建nfs共享存储实践

《k8s搭建nfs共享存储实践》本文介绍NFS服务端搭建与客户端配置,涵盖安装工具、目录设置及服务启动,随后讲解K8S中NFS动态存储部署,包括创建命名空间、ServiceAccount、RBAC权限... 目录1. NFS搭建1.1 部署NFS服务端1.1.1 下载nfs-utils和rpcbind1.1

Java中实现对象的拷贝案例讲解

《Java中实现对象的拷贝案例讲解》Java对象拷贝分为浅拷贝(复制值及引用地址)和深拷贝(递归复制所有引用对象),常用方法包括Object.clone()、序列化及JSON转换,需处理循环引用问题,... 目录对象的拷贝简介浅拷贝和深拷贝浅拷贝深拷贝深拷贝和循环引用总结对象的拷贝简介对象的拷贝,把一个

Redis高性能Key-Value存储与缓存利器常见解决方案

《Redis高性能Key-Value存储与缓存利器常见解决方案》Redis是高性能内存Key-Value存储系统,支持丰富数据类型与持久化方案(RDB/AOF),本文给大家介绍Redis高性能Key-... 目录Redis:高性能Key-Value存储与缓存利器什么是Redis?为什么选择Redis?Red

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

Nginx屏蔽服务器名称与版本信息方式(源码级修改)

《Nginx屏蔽服务器名称与版本信息方式(源码级修改)》本文详解如何通过源码修改Nginx1.25.4,移除Server响应头中的服务类型和版本信息,以增强安全性,需重新配置、编译、安装,升级时需重复... 目录一、背景与目的二、适用版本三、操作步骤修改源码文件四、后续操作提示五、注意事项六、总结一、背景与

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分