热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

过程记录_raid5掉了2块硬盘,热备盘未激活的恢复过程记录

篇首语:本文由编程笔记#小编为大家整理,主要介绍了raid5掉了2块硬盘,热备盘未激活的恢复过程记录相关的知识,希望对你有一定的参考价值。 【Raid5阵列数据恢复案例简介】今天记录一次raid5磁盘

篇首语:本文由编程笔记#小编为大家整理,主要介绍了raid5掉了2块硬盘,热备盘未激活的恢复过程记录相关的知识,希望对你有一定的参考价值。



【Raid5阵列数据恢复案例简介】

今天记录一次raid5磁盘阵列数据恢复的成功案例。首先简单介绍一下需要数据恢复的服务器基础配置情况:
·
客户的服务器设备为EMC存储,raid5磁盘阵列,由多块stat硬盘组成一组磁盘阵列,包含两块热备盘。服务器发生故障崩溃时底层硬盘有2块出现故障,热备盘中有一块被激活。
·


【服务器数据恢复常规检测】

数据恢复中心的数据恢复工程师前往客户现场对服务器设备进行故障检测。服务器数据恢复工程师对客户服务器设备进行了简单排查,确认raid5阵列瘫痪;上层lun无法正常使用,2块热备盘中有一块已经启动。
·
数据恢复工程师对掉线的硬盘进行物理排查,两块硬盘中均未检测到坏道、磁头故障等物理损坏。进行接下来的数据恢复操作时可以不需要进行物理修复即可。
·


【raid5数据备份】

在数据恢复操作之前,需要将服务器设备上的所有原始数据进行镜像备份,在本次数据恢复案例中,服务器数据恢复工程师将所有硬盘连接到北亚数据恢复中心的数据恢复专用存储池中,对所有硬盘进行了扇区级镜像操作。
·


【分析该服务器raid组结构】

服务器数据恢复操作通常都是基于恢复raid组进行数据恢复操作的,因此本次数据恢复操作也同样需要对raid阵列基础信息进行分析,从而重组raid结构。
·
经过数据恢复工程师对每一块硬盘的分析发现,客户原服务器内的两块热备盘内全部没有任何数据,也就是说即使被激活的热备盘也同样没有同步到任何数据,两块热备盘从实际上而言并没有发生任何作用。想要恢复数据,只好继续恢复原raid5阵列的其他基本数据,重组raid5.
·


【分析RAID组掉线盘信息】

根据上述数据恢复思路,服务器数据恢复工程师使用自主研发的数据恢复工具分析出该组raid5阵列的基础信息,并虚拟重组出了raid5磁盘阵列。在raid数据恢复常规流程下,我们会将多块硬盘掉线的阵列中最早掉线的硬盘从阵列中剔除。通常我们进行数据分析的方法是比对每块硬盘在同一个条带上的数据是否一致,将明显不同的硬盘剔除后进行条带校验,直至找到数据恢复的最佳状态为止。
·


【分析RAID组中的LUN信息】

成功重组出raid5阵列后,工程师开始对lun信息进行分析,在本次数据恢复案例中,客户的服务器上层只有一个lun,工程师只需要将这唯一的一个lun信息进行分析,然后使用raid数据恢复程序对lun数据的map进行解析和导出。
·


【ZFS文件系统解析并修复】

使用数据恢复工具对上层的文件系统进行解析和恢复。客户上层采用的是zfs文件系统,服务器数据恢复工程师对文件系统解析时发现部分文件系统元文件报错,于是数据恢复工程师对现有的数据恢复工具进行debug调试,使程序适应本次数据恢复的实际情况。
·
经过调试,导致zfs文件系统解析报错的原因是由于客户的服务器突然瘫痪导致文件系统中某些元文件被损坏,导致数据恢复工具无法正常解析。服务器数据恢复工程师针对损坏的元文件采用人工修复等方法,保障zfs文件系统可以被正常解析。
·


【导出raid5阵列内所有数据】

通过对文件系统的完整解析,服务器数据恢复工程师最终将客户raid阵列内的数据完整导出,由客户工程师配合搭建数据验证环境,恢复出来的所有数据进行验证,经过验证,客户原服务器内的所有数据均被成功恢复,本次数据恢复成功。


推荐阅读
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 解读MySQL查询执行计划的详细指南
    本文旨在帮助开发者和数据库管理员深入了解如何解读MySQL查询执行计划。通过详细的解析,您将掌握优化查询性能的关键技巧,了解各种访问类型和额外信息的含义。 ... [详细]
  • 掌握远程执行Linux脚本和命令的技巧
    本文将详细介绍如何利用Python的Paramiko库实现远程执行Linux脚本和命令,帮助读者快速掌握这一实用技能。通过具体的示例和详尽的解释,让初学者也能轻松上手。 ... [详细]
  • 福克斯新闻数据库配置失误导致1300万条敏感记录泄露
    由于数据库配置错误,福克斯新闻暴露了一个58GB的未受保护数据库,其中包含约1300万条网络内容管理记录。任何互联网用户都可以访问这些数据,引发了严重的安全风险。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 如何配置Unturned服务器及其消息设置
    本文详细介绍了Unturned服务器的配置方法和消息设置技巧,帮助用户了解并优化服务器管理。同时,提供了关于云服务资源操作记录、远程登录设置以及文件传输的相关补充信息。 ... [详细]
  • UNP 第9章:主机名与地址转换
    本章探讨了用于在主机名和数值地址之间进行转换的函数,如gethostbyname和gethostbyaddr。此外,还介绍了getservbyname和getservbyport函数,用于在服务器名和端口号之间进行转换。 ... [详细]
  • 邮件(带附件,模拟文件上传,跨服务器)发送核心代码1.测试邮件发送附件接口***测试邮件发送附件*@parammultipartFile*@return*@RequestMappi ... [详细]
  • 360SRC安全应急响应:从漏洞提交到修复的全过程
    本文详细介绍了360SRC平台处理一起关键安全事件的过程,涵盖从漏洞提交、验证、排查到最终修复的各个环节。通过这一案例,展示了360在安全应急响应方面的专业能力和严谨态度。 ... [详细]
  • 本文深入探讨了Linux系统中网卡绑定(bonding)的七种工作模式。网卡绑定技术通过将多个物理网卡组合成一个逻辑网卡,实现网络冗余、带宽聚合和负载均衡,在生产环境中广泛应用。文章详细介绍了每种模式的特点、适用场景及配置方法。 ... [详细]
  • 本文详细分析了Hive在启动过程中遇到的权限拒绝错误,并提供了多种解决方案,包括调整文件权限、用户组设置以及环境变量配置等。 ... [详细]
  • 本文探讨了如何优化和正确配置Kafka Streams应用程序以确保准确的状态存储查询。通过调整配置参数和代码逻辑,可以有效解决数据不一致的问题。 ... [详细]
  • 本文详细介绍如何使用Samba软件配置CIFS文件共享服务,涵盖安装、配置、权限管理及多用户挂载等关键步骤。通过具体示例和命令行操作,帮助读者快速搭建并优化Samba服务器。 ... [详细]
  • 本文介绍了如何使用PHP代码实现微信平台的媒体素材上传功能,详细解释了API接口的使用方法和注意事项,确保文件路径正确以避免常见的错误。 ... [详细]
  • 在现代网络环境中,两台计算机之间的文件传输需求日益增长。传统的FTP和SSH方式虽然有效,但其配置复杂、步骤繁琐,难以满足快速且安全的传输需求。本文将介绍一种基于Go语言开发的新一代文件传输工具——Croc,它不仅简化了操作流程,还提供了强大的加密和跨平台支持。 ... [详细]
author-avatar
段筱筱雨_422
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有