TL;DR:如果您不小心从服务器上拔下了 SAS 电缆,请安装storcli
并运行
storecli /call show
Run Code Online (Sandbox Code Playgroud)
记下正确的控制器和机柜以及 nrun
#!/bin/bash
# Use your values from above
CONTROLLER=
ENCLOSURE=
storcli /c$CONTROLLER /e$ENCLOSURE /sall set good
storcli /c$CONTROLLER /fall show
echo -n "Import all foreign drives? [y/n]"
read yno
case $yno in
[yY] | [yY][Ee][Ss] )
storcli /c$CONTROLLER /fall import
;;
*) echo "Skipping import"
;;
esac
Run Code Online (Sandbox Code Playgroud)
当您断开 SAS 电缆时,控制器注意到所有驱动器都已消失,因此可能处于不良状态。这就是为什么你会得到Bad
. 此外,这些驱动器可能是新的,尚未包含在您的 RAID 设置中,这就是您得到的Frn
结果Frn-Bad
。
为了解决此问题,您首先需要将所有驱动器标记为UGood
(未知,但良好)。最简单的方法就是使用storcli
(从LSI下载)。首先查找所有驱动器
storcli /call show
Run Code Online (Sandbox Code Playgroud)
它将/call
查找所有控制器,但您也可以使用/cX
特定的控制器。所有Frn-Bad
驱动器都将驻留在一个外壳中,例如
8:1 | drive information .... | Frn-Bad | ...
8:13 | drive information .... | Frn-Bad | ...
8:14 | drive information .... | Frn-Bad | ...
8:23 | drive information .... | Frn-Bad | ...
Run Code Online (Sandbox Code Playgroud)
冒号前面的常见数字是外壳。再次致电storcli
并使用附件编号来验证您手头是否确实拥有正确的驱动器:
storcli /call /e8 /sall show
Run Code Online (Sandbox Code Playgroud)
现在将所有这些驱动器设置为良好
storcli /call /e8 /sall set good
Run Code Online (Sandbox Code Playgroud)
这会将驱动器标记为未知且良好。MEGARaid 控制器将配置保存在硬盘上。你可以用以下方式显示它
storcli /c0 /fall show
Run Code Online (Sandbox Code Playgroud)
然后导入它
storcli /c0 /fall import
Run Code Online (Sandbox Code Playgroud)
导入驱动器应该需要不到一分钟的时间。