首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
其他好文
> 详细
数据恢复过程之:服务器raid5两块硬盘离线数据恢复
时间:
2018-04-04 16:10:37
阅读:
162
评论:
0
收藏:
0
[点我收藏+]
标签:
服务器
数据恢复
riad5
磁盘阵列
离线
服务器故障情况简介:
客户的一台ibm x3850服务器上组了一个raid5磁盘阵列,有两块硬盘离线,服务器崩溃。北亚数据恢复中心工程师对服务器进行初检,客户的磁盘阵列由5块硬盘组成,linux redhat 5.3操作系统,存储一个oracle数据库。阵列中有两块硬盘处于离线状态,热备盘未激活。硬盘无物理故障,无明显同步表现。
数据恢复方案:
1.关闭服务器同时确保在恢复过程中不再开启服务器,将故障盘进行标记后取出槽位挂载至数据恢复公司的备份服务器环境进行镜像备份。完成后恢复原故障服务器。
2.分析备份盘中的raid结构,得到原阵列中的raid界别、条带大小、校验方向、条带规则以及meta区域等信息。
根据分析出来的raid信息虚拟搭建一组raid5环境对磁盘文件系统进行解释,对虚拟结构的正确性检测,数据无误即可回迁数据。
服务器数据恢复及系统复原过程:
对原硬盘镜像后发现除了2号盘有10-20个坏扇区外其他硬盘均正常。
对raid结构进行分析,最佳盘序结构是0-1-2-3,缺失3号盘,结构如下图:
3.组好后数据验证,200M以上的最新压缩包解压无报错,按照这一结构将虚拟raid生成到一块硬盘上,通过USB的方式把恢复后的单盘接入原服务器,通过linux SystemRescueCd启动故障服务器后使用dd命令进行全盘回写。
数据回写完成后无法进入操作系统,报错信息为:/etc/rc.d/rc.sysinit:Line 1:/sbin/pidof:Permission denied。工程师使用SystemRescueCd重启后检查发现文件的权限、时间、大小都有明显错误,对根分区再次分析定位出错的/sbin/pidof/datahf.net,得出问题原因是2号盘坏道。
通过其他盘针对2号盘的损坏区域进行xor补齐并重新校验文件系统,依然有错误,工程师只好再次对inode表进行检查,发现2号盘损坏区域有部分节点表现为(图中的55 55 55部分):
可以看出虽然节点中描述的uid还正常存在,但大小、属性、最初的分配块全部是错误的。通过日志确定原节点块的节点信息后进行修正,重新dd根分区,执行fsck -fn /dev/sda5/datahf.net检测,报错情况如下图:
经过分析发现,原来3号盘最先离线,节点信息新旧交集导致有多个节点共用数据块,工程师按节点所属的文件进行区别,清除错误节点后,再次执行fsck -fn /dev/sda5,依然有部分位于doc目录下的节点报错,由于不影响启动所以强行修复后重启系统,系统正常,启动数据库正常。此次数据恢复工作成功。
数据恢复过程之:服务器raid5两块硬盘离线数据恢复
标签:
服务器
数据恢复
riad5
磁盘阵列
离线
原文地址:http://blog.51cto.com/sun510/2094730
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
分布式事务
2021-07-29
OpenStack云平台命令行登录账户
2021-07-29
getLastRowNum()与getLastCellNum()/getPhysicalNumberOfRows()与getPhysicalNumberOfCells()
2021-07-29
【K8s概念】CSI 卷克隆
2021-07-29
vue3.0使用ant-design-vue进行按需加载原来这么简单
2021-07-29
stack栈
2021-07-29
抽奖动画 - 大转盘抽奖
2021-07-29
PPT写作技巧
2021-07-29
003-核心技术-IO模型-NIO-基于NIO群聊示例
2021-07-29
Bootstrap组件2
2021-07-29
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!