DELL PowerEdge 2950 RAID5数据恢复手记

简介:
[摘要]
    北京科技大学,DELL PowerEdge 2950,RAID5,由300gb SAS 硬盘*6组成。未知原因,服务器无法正常工作,进入RAID控制界面查询,发现1号盘与6号盘损坏,经DELL工程师指点后,强制上线6号盘,结果盘阵无法启动(操作系统也安装于此RAID),客户意识到操作的危险性,于是停止所有操作,此间RAID工作约20分钟。
    系统为REDHAT 文件系统为EXT3,存储着北京科技大学某研究室整整运算1年多的结果,数据至关重要。
[难点]
    1、SAS的连接问题,SAS是新的服务器硬盘接口,绕过RAID,以单盘连接SAS的方式相对来困难一些。不过,这是过去,这个问题早已解决。
    2、容量大,为1.8TB,如果需要重组及导出,会花大量时间及磁盘空间。
    3、LINUX EXT3文件系统,处理起来不像WINDOWS平台文件系统那样直接。
    4、分区方式采用LVM方式。
[分析]
    根据客户描述及表现,此例中RAID极有可能早先已有一块盘OFFLINE,突然性的另一块盘离线导致RAID整个盘阵崩溃,按描述,应该1号盘为后离线的,6号盘早已离线。
    如果上面分析属实,则1号盘必须为可读取的方可恢复全部数据。但强制上线6号盘,也许会导致文件系统出现不一致,导致其他盘内的数据发生变更。
[解决方案]
    应大致检测所有硬盘状态,分析RAID信息,剔掉可能的陈旧数据盘。
    重组RAID,读取数据。或直接以EXT3的模式恢复数据。
[解决过程]
    1、出于对用户数据负责,先用6块320GB移动硬盘对原盘进行一对一的镜像,此过程使用不含RAID功能的SAS适配器作为物理连接。
    2、连接6块镜像盘,对其结构进行分析,得到原RAID的结构参数。
    3、检测RAID校验一致辞性,发现极多不匹配。
    4、从6块盘中剔掉陈旧盘。但此时发现,前部分区结构的内容错误,应该为后强制上线所致(害人的DELL工程师)
    5、修正硬盘结构,直接将LVM改为普通分区指引。
    6、通过自主开发软件直接解释EXT3,读取数据,以SAMBA方式导出至LINUX EXT3目标分区(因自主软件为WINDOWS平台)。
    数据恢复成功!
[给用户的建议]
    1、DELL的服务器事实上可以查询到RAID的日志,在两块以上盘离线的情况下,应该通过查询日志等方式确定离线的过程,即使强制上线,也需要风险最小(数据重要,尽量少做这类操作)
    2、可以通过增加DRAC或hotspare等方式减少此类事故的发生率。
    3、如果数据重要,可先行咨询数据恢复公司




本文转自 张宇 51CTO博客,原文链接:http://blog.51cto.com/zhangyu/33739,如需转载请自行联系原作者
目录
相关文章
|
Docker 容器
Docker Compose学习之docker-compose.yml编写规则 及 实战案例
本文是博主学习docker compose 规则的记录,希望对大家有所帮助。
731 0
Docker Compose学习之docker-compose.yml编写规则 及 实战案例
|
JSON 监控 关系型数据库
Docker 容器日志分析
Docker 容器日志分析
688 0
|
10月前
|
缓存 负载均衡 Java
2025春招 SpringCloud 面试题汇总
大家好,我是V哥。SpringCloud是面试中的重点,涵盖基础概念、组件细节、高级特性及性能优化等内容。为帮助大家更好地准备2025年的Spring Cloud面试,我整理了一系列常见面试题及答案,涉及服务注册与发现(Eureka)、配置管理(Spring Cloud Config)、负载均衡(Ribbon)、断路器(Hystrix)、微服务网关(Spring Cloud Gateway)等关键知识点。此外,还包括分布式事务管理、链路追踪(Sleuth+Zipkin)、安全性(OAuth2)以及性能优化和实践经验。希望这些内容能助你一臂之力,顺利通过面试。欢迎关注威哥爱编程,全栈之路就你行。
3132 24
|
7月前
|
负载均衡 安全 应用服务中间件
《Nginx反向代理MinIO集群全实战:负载均衡配置、SELinux安全策略与生产环境调优指南》
SELinux(Security-Enhanced Linux) 是 Linux 内核的一个安全模块,用于提供强制访问控制(MAC, Mandatory Access Control),比传统的 Linux 文件权限(DAC, Discretionary Access Control)更严格。用执行命令时不受SELinux的限制,但Nginx Worker 进程:以。在一台新的虚拟机或现有虚拟机上安装 Nginx,这里使用。),确认请求被正确转发到 MinIO 集群。编辑 Nginx 配置文件。
708 1
|
11月前
|
Ubuntu 开发工具 git
Ubuntu编译ffmpeg解决错误:ERROR: avisynth/avisynth_c.h not found
通过本文的详细指导,您可以顺利地在Ubuntu系统上配置和编译FFmpeg,并解决Avisynth头文件缺失的问题。
498 27
|
Kubernetes Cloud Native 微服务
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
728 3
|
11月前
|
存储 虚拟化 Windows
如何将硬盘克隆到另一个硬盘或是固态硬盘?(免费)
今天的文章是关于硬盘克隆,给大家介绍一些相关术语、克隆硬盘的好处、相关工具软件以及在Windows电脑上克隆硬盘的具体步骤。
element中tree组件的选中获取和返显
本文介绍了如何在Element UI的tree组件中获取选中的节点值以及如何进行节点的默认选中(返显)。主要通过使用`getCheckedKeys()`和`getHalfCheckedKeys()`方法来获取完全和半选中的节点,然后使用`setCheckedKeys()`方法来设置默认选中的节点。
1570 2
element中tree组件的选中获取和返显
|
存储 Swift
大师学SwiftUI第18章Part3 - 自定义视频播放器
录制和播放视频对用户来说和拍照、显示图片一样重要。和图片一样,Apple框架中内置了播放视频和创建自定义播放器的工具。
657 0