在我们的商店,我们有 nagios 检查聪明的Linux 服务器中硬盘的状态,但到目前为止它还没有真正用处:当我们收到 SMART 警报时,系统已经出现问题,所以我们已经知道了:)
然后,我们制定了一项惯例,定期在磁盘上运行 SMART 后台自检(smartctl -t long
在非高峰时段),并手动跟踪这些数据。我们记录磁盘型号和序列号、上次测试的日期、重新分配的扇区数(我们通常会尝试更改每个重新分配扇区数大于 0 的磁盘)以及磁盘累计的通电时间,这样我们就能一目了然地知道哪些磁盘比较旧。
由于系统数量(以及磁盘数量)不断增加,我们希望能够自动执行运行测试和收集结果的任务。在开始重新发明轮子之前,我开始寻找现有的解决方案,但没有找到。
在 Linux 下,是否有任何软件可以自动执行 SMART 自我测试并收集结果数据 - 或者可以将其集成到某些硬件库存管理系统中?
答案1
您是否已经通过 SNMP 轮询这些服务器?如果是这样,如果代理基于 net-snmp,您可以使用其“扩展”功能(通过 NET-SNMP-EXTEND-MIB)将任意脚本的结果填充到您选择的 OID 中。
中心在他们的 wiki 上有一个很好的操作方法使用 net-snmp 监控 SMART 数据。
如果你尚未收集和存储 SNMP,蟋蟀是一个开源的、轻量级的服务器端解决方案,并且大多数类Unix系统都支持net-snmp代理。
答案2
smartd
从智能工具该软件包可以按计划运行自检,在发生严重事件时发送电子邮件警报,并可以在指定更改时运行指定程序。它还将 SMART 属性更改记录到 syslog 中,logwatch 会将其包含在每日报告中(但报告对机器不友好)。请参阅SMART 工具比较对于此选项和其他选项。