Jam*_*mes 3 raid lsi bad-blocks megaraid hardware-raid
我使用 LSI MegaRaid SAS 控制器在单个虚拟驱动器中有 4 个物理驱动器。似乎(至少)其中一个驱动器有坏扇区,因为:
badblocks
报告一些坏扇区我希望解决这个问题就像换出有问题的磁盘并重建 RAID 阵列一样简单。我认为 LSI MegaRaid WebBIOS 可以让我识别有问题的磁盘,但我找不到任何检查坏扇区的选项。
任何人都可以就如何识别有问题的磁盘提供任何建议吗?
Smartmontools 具有扩展功能,允许它通过 LSI(以及其他)RAID 阵列轮询驱动器以获取 SMART 数据。通常,这不是您可以做的,因为 RAID 抽象模糊了与驱动器的直接接口。
您的计算机上可能未安装 Smartmontools。然而,它是大多数发行版的大多数“主存储库”的原生版本,甚至还有一个 Windows 版本:http : //sourceforge.net/projects/smartmontools/files/
它可用于轮询 LSI MegaRAID 控制器后面的驱动器,如下所示:
smartctl -a -d megaraid,N /dev/sdX
其中“-a”表示显示所有磁盘数据,-d 表示设备类型(megaraid 是您的情况下的类型),后跟 N 表示该控制器中的驱动器号。要访问插槽 0 中的驱动器,请在此处输入 0。如果您希望轮询所有四个驱动器,请运行此命令四次,将 N 替换为 0 到 3。sdX 是 RAID 抽象本身,在操作系统中通常可以看到。你的可能是sda。
您将看到每个驱动器的长输出,您要查找的是报告的一般 SMART 故障(您可能找不到,因为您的控制器没有拒绝驱动器),或报告的“离线不可纠正扇区”或“待定部门”。此字段中任何大于 0 的驱动器都是坏的。不应该对这些字段给予任何怜悯,因为需要大量失败的读取才能将任一值增加 1。
您还可以像这样执行短期或长期测试(适用上述相同规则):
smartctl -t [long|short] -d megaraid,N /dev/sdX
如果 RAID 将错误传递给您,那么显然有些错误无法默默纠正。
如果出现读取错误,则意味着这些块的所有冗余副本都已被破坏。故障驱动器不会弹出,因为没有备用。
如果出现写入错误,则意味着一个驱动器继续报告写入错误,并且 RAID 无法弹出它,因为它当前不是冗余的。在冗余设置中您永远不会看到写入错误,因此如果您看到,请更换控制器。
如果您可以添加更多磁盘,请创建第三个镜像——恢复会报错,您将需要检查文件系统,但您最终应该尽可能多地保留完整的数据,我希望有任何好处控制器然后踢出所有损坏的磁盘。
回到干净的设置后,设置计划检查以在这些错误成为问题之前捕获它们。
归档时间: |
|
查看次数: |
5246 次 |
最近记录: |