我有24个驱动器上的RAID6。 raid是用mdadm
设置的,所以它是一个软件raid。 其中一个驱动器死亡,服务器冻结,所以必须使用Power Cycle重新启动(关机+开机)。
当服务器启动时,它启动了23个设备的RAIDarrays,并开始重新同步操作。 如果我理解正确,这个重新同步只读取所有驱动器上的数据,并检查是否一切正常,没有执行写入。 我可以通过显示只读的iostat -m 1
来确认。
所以我用新的驱动器replace了有故障的驱动器,并且我想启动REBUILD,所以它实际上将数据写入新添加的设备。 我发出了以下命令:
mdadm --add /dev/md0 /dev/sdc # this adds sdc to the array
它进行顺利,然而袭击仍然是重新振兴,而不是重build。 驱动器在/ proc / mdstat中报告为备用(S),并且可能等待重新同步完成以便开始重build。
我不得不说,我不关心resync,我需要立即停止,并立即开始重build。 有没有办法做到这一点? 谢谢
我无法等待解决scheme,我在网上find的任何东西在arrays处于活动状态时都不起作用。 所以我停止了arrays
mdadm --stop /dev/md0
然后再次启动它
mdadm --assemble /dev/md0 /dev/sd{a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x}
这有效地停止了重新同步并开始重build。