记录一次raid故障后的恢复和回迁数据全过程

简介:

  故障发生在两块盘组成的一个raid0上,其中的一块盘亮黄灯,被raid卡踢出后,raid崩溃,下面就把当时抢救数据的整个过程进行介绍。

   由于硬盘是两块SAS 300G的硬盘,先把硬盘从机器中拔出来,然后通过SAS HBA的方式直连到win的环境下,并在磁盘管理中将硬盘标记为脱机状态,以保证操作过程中是只读的,保护原始数据的安全。

   在将两个硬盘底层所有扇区都镜像出来后,通过文件系统分析盘序和条带大小,使用软件虚拟重组的方式将原始raid环境搭起来后,再进一步解析ntfs文件系统后终于看到了数据,这时候新的问题出现了,如果直接把数据拷贝出来,那么原始的系统和应用都需要重新部署,而且因为没有了软件服务商的支持,实施起来有一定的难度,于是想着把搭起来的raid再完整的迁移到新的raid环境中,就可以做到和损坏前一样。这样一来就可以节省大量时间。

   由于有了前车之鉴,所以在新的raid环境上吸取了上次的教训,决定使用三块盘组建raid5,即使有一块硬盘出现故障离线,raid也可以处于降级状态,不会立刻崩溃,给了使用者替换新硬盘的机会。

   在安装了支持raid5的新raid卡和插了新硬盘后创建了一个raid5的卷,现在开始研究怎么把做出来的数据迁移过去

   因为服务器前面板由raid卡来管理,所以直接插个新盘上去是不会在系统下直接识别的,需要在raid卡下创建raid后才可以使用,而且限于单盘容量的问题,不能采用这个方案,于是研究别的办法。因为服务器前面板有个DVD光驱,而且现在的服务器光驱和主板都是采用sata通道连接,所以可以把机盖打开使用上面的sata口,连接一块sata硬盘,在pe或者linux live cd模式下就可以回迁数据了,而且这是速度最快的方法。但是在我们准备实施的时候发现这个机器使用的sata不是标准大小接口类型,而是mini sata,因为手里没有现成的转接卡,所以这个办法也不行,其实在数据量不大的时候也可以使用USB方式去做,但是因为现在绝大部分服务器的usb还停留在USB2.0 速度太慢,对于大数据量,时间上不可接受。

   最后的最后我们绝对使用一种新奇的办法回迁数据----走网络。

   这时候需要先启动个linux live cd 一般我们都使用linux system rescue cd,在linux启动完成后ifconfig配置下服务器的ip,然后我们将做出来的数据放在一个win 2008 r2的机器上,在win环境下开启nfs服务(默认是关闭的)“服务管理器--角色--添加角色--勾选文件服务—勾选网络文件系统服务进行安装,第一次安装完成之后需要重启一下计算机”

wKiom1jkizjw8mvNAAFOBZaFbiI382.jpg-wh_50 

   重启完成后我们对存放镜像数据的文件夹进行操作,右键—NFS共享标签页里面勾选共享此文件夹,然后有个重点是在权限里面勾选允许根目录访问,访问类型选择读写。

wKioL1jki0vyu7wVAAIA4YH8Hdo147.jpg-wh_50 

   Win端的设置完成后,我们再看下linux端的设置,ifconfig查看当前网络配置

wKiom1jki17gNMLPAAIOOG4jJvE901.jpg-wh_50 

    因为我们需要分配个ip给他,在这里我们分配网卡“enp4s0”,ip地址分配成10.3.12.3 子网掩码为255.0.0.0,使用如下命令:ifconfig enp4s0 10.3.12.3 255.0.0.0 然后再使用ifconfig查看ip地址

 wKiom1jki3DCRFTIAAENBrZDQqo710.jpg-wh_50

   配置好ip之后,查看一下网络是否连同,命令:ping 10.1.1.1 ,

  再查看10.1.1.1机器上的NFS共享的目录是否能够访问,命令:showmount –e 10.1.1.1,

wKioL1jki32g3BqBAADeGSPjgaA150.jpg-wh_50 

   源机器和目标机器现在已经连接通,在linux创建一个目录mkdir /mnt/bysjhf

     创建好之后,我们将镜像出来的数据挂载到linux下新创建的文件夹下mount 10.1.1.1:/data /mnt/bysjhf –o nolock

     挂载好之后,查看一下挂载点信息df –k

 wKiom1jki5LzBvnHAAO6ZRNnPmc696.jpg-wh_50

   确定已经挂载好之后,进入这个文件夹,查看一下文件夹里的镜像文件:

     root@sysresccd /mnt/bysjhf % ls

     并查看硬盘及分区信息:fdisk –l

 

wKioL1jki8-C0NmRAABoXiWFMhE693.jpg-wh_50

wKiom1jki9WSYE2JAAJ0RFLX35o425.jpg-wh_50

 

   确认好源设备和目标设备之后,进行镜像操作:

  dd if=/mnt/bysjhf/data.img of=/dev/sda bs=10M

wKioL1jki_eRWQTOAAB7o2pIk6w140.jpg-wh_50 

    在千兆网环境下NFS的速度能够跑到70M/S,这已经是一个很理想的速度,在等待dd完成后,我们重启ibm X3650服务器,并选择raid引导,期待的windows启动页面终于出现了,前面的辛苦没有白费,数据完整的迁移成功。





本文转自 张宇 51CTO博客,原文链接:http://blog.51cto.com/zhangyu/1913059,如需转载请自行联系原作者
目录
相关文章
|
机器学习/深度学习 传感器 人工智能
AI:国内外人工智能产业应用图谱应用层/基础层详解
AI:国内外人工智能产业应用图谱应用层/基础层详解
AI:国内外人工智能产业应用图谱应用层/基础层详解
|
存储
openzfs draid是什么
openzfs draid是什么
2210 0
openzfs draid是什么
|
7月前
|
存储 人工智能 安全
AI时代,存力 or 算力 哪个更重要
本文探讨了AI技术发展中算力与存力的重要性。算力指计算能力,对处理大数据和实时计算至关重要;存力则是数据存储能力,确保数据安全可靠,支持后续分析。两者相辅相成,共同推动AI技术的快速发展,缺一不可。
|
4月前
|
机器学习/深度学习 人工智能 机器人
阿里通义开源推理模型新王者!QwQ-32B:性能直逼671B的DeepSeek-R1
QwQ-32B 是阿里巴巴开源的新型推理模型,基于强化学习训练,具备强大的数学推理和编程能力,性能媲美更大参数量的模型。
610 8
阿里通义开源推理模型新王者!QwQ-32B:性能直逼671B的DeepSeek-R1
|
12月前
|
存储 人工智能 负载均衡
分布式存储的数据冗余
【7月更文挑战第28天】分布式存储的数据冗余
498 4
|
11月前
|
Linux
在Linux中,如何使用tar命令创建和恢复备份?
在Linux中,如何使用tar命令创建和恢复备份?
|
监控 网络协议 API
利用zabbix api批量添加数百台监控主机
利用zabbix api批量添加监控主机 在公司规模很庞大的时候,每次都手动添加监控主机将会很麻烦,我们可以利用zabbix的api去批量添加监控主机 本次我们将实现用一台主机虚拟出100台主机,并通过api的方式自动添加监控主机
899 0
利用zabbix api批量添加数百台监控主机
|
机器学习/深度学习 编解码 计算机视觉
一文看尽深度学习中的各种数据增强(二)
一文看尽深度学习中的各种数据增强
776 0
|
Linux
Linux使用dd命令进行数据备份
Linux使用dd命令进行数据备份
354 0