如何让 smartd 对某个特定的离线无法纠正扇区保持沉默?

如何让 smartd 对某个特定的离线无法纠正扇区保持沉默?

我在双磁盘软件 RAID-1 中有一个磁盘,最近该磁盘的 SMART 状态中出现了“脱机无法纠正的扇区”。

198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       1

如果这种情况发生得越来越频繁,这显然只是磁盘即将发生故障的征兆(而且由于驱动器是镜像的,因此也不存在真正的数据丢失的巨大风险)。当时,自我测试也在某个时候失败了,并向smartd我发送了一封电子邮件通知我这件事,当然这是应该的。

但是,写入损坏的扇区通常会导致磁盘使用其备用扇区之一,而这显然是真的,因为我dd重写了磁盘,所以所有自检都运行正常。而且badblocks也没有发现任何抱怨的理由。

Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
[...]
# 5  Extended offline    Completed without error       00%      5559         -
# 6  Short offline       Completed without error       00%      5540         -
# 7  Short offline       Completed: read failure       90%      5524         63273368

但故障扇区的数量并没有减少,实际上不应该减少,因为损坏的扇区仍然存在,尽管未被使用。然而,它smartd每晚都会继续给我发送电子邮件:

The following warning/error was logged by the smartd daemon:

Device: /dev/sda [SAT], 1 Offline uncorrectable sectors

这显然非常烦人,并且麻痹了我对smartd邮件的健康恐慌反应。

该磁盘是西部数据WD20EARS,smartd版本是5.41 2011-06-09 r3365。

答案1

在某些磁盘上,您可能必须求助于配置文件中的-U 198+(或?)。-U +

请小心。如果您不是原始提问者,请仔细阅读整个问题。如果您在不需要它的磁盘上使用它,它将抑制完全有效的警告。

如果指定了“+”,则仅当扇区数自上次检查周期以来有所增加时才会打印报告。某些磁盘在重新分配坏扇区时不会重置此属性。另请参阅下面的“-v 198,increasing”。

smartd.conf (5)

例如,假设你正在使用 中的默认配置smartd.conf。在这种情况下,文件中有很多注释,但唯一没有注释的行在这里:

# The word DEVICESCAN will cause any remaining lines in this
# configuration file to be ignored: it tells smartd to scan for all
# ATA and SCSI devices.  DEVICESCAN may be followed by any of the
# Directives listed below, which will be applied to all devices that
# are found.  Most users should comment out DEVICESCAN and explicitly
# list the devices that they wish to monitor.
DEVICESCAN

将选项添加到行尾:

DEVICESCAN -U 198+

答案2

这些邮件的来源有两种可能。smartd 可以自行发送邮件,但很可能没有这样配置,因此我假设这些邮件是由 logcheck 发送的。如果这个假设是错误的,您无需继续阅读。

如果 logcheck 认为您应该担心系统上发生的任何事情,它会扫描日志文件并发送邮件。

您可以选择编写 logcheck 忽略规则,该规则告诉 logcheck 不要发送与特定模式匹配的消息。

您可以(在基于 Debian 的系统下)创建一个名为“/etc/logcheck/ignore.d.server/smartd_own”的文件,其内容如下:

^\w{3} [ :0-9]{11} [._[:alnum:]-]+ smartd\[[0-9]+\]: Device: /dev/sda \[SAT\], 1 Offline uncorrectable sectors$

这应该会过滤掉烦人的邮件,但如果无法纠正的扇区计数器增加,则会再次写信给您。

相关内容