我有一个外部硬盘,它不能正确报告 SMART 信息(它给出无意义的结果)。
因此,smartd
守护进程( 的一部分smartmontools
)不断发出关于设备可能发生故障的错误警报。
在/etc/smartmontools/smartd.conf
(我使用默认值,这里)我看到了一堆选项,但没有一个与我的需要相关(忽略特定硬盘驱动器的警报 - 我希望能够通过 USB ID 等来引用它,因为/dev
如果我有更多设备,条目将会有所不同连接的)。
我可以编辑/usr/libexec/smartmontools/smartdnotify
(事件发生时调用的脚本smartd
)并手动强制它关闭该特定设备,但我想知道是否有一种不太难看的方法来做到这一点。
如何smartd
不报告特定硬盘的任何警告?我会不是喜欢禁用守护进程;我希望它不关心这个特定的硬盘。
答案1
-d ignore
是一个新指令,允许从 DEVICESCAN 中忽略设备。
~$ cat /etc/smartd.conf
#/dev/disk/by-id/scsi-SATA_KingSpec_KDM-44VVS14413121 -d ignore
# frustratingly specifying disk by-id doesn't work so fall-back to ignoring sdb
/dev/sdb -d ignore
DEVICESCAN -a -o on -S on -n standby,q -s (S/../.././02|L/../../6/03) -W 4,40,45 -m root
答案2
您需要注释掉该DEVICESCAN
行,并为各个设备添加行。例如,我的看起来像这样:
/dev/sda -d removable -n standby,8 -S on -o on -a \
-m root -M exec /usr/share/smartmontools/smartd-runner \
-r 194 -R 5 -R 183 -R 187 -s L/../../6/01
/dev/sdb -d removable -n standby,8 -S on -o on -a \
-m root -M exec /usr/share/smartmontools/smartd-runner \
-r 194 -R 5 -R 183 -R 187 -s L/../../6/06
/dev/sdc -d removable -n standby,8 -S on -o on -a \
-m root -M exec /usr/share/smartmontools/smartd-runner \
-r 194 -R 5 -R 183 -R 187 -s L/../../7/01
/dev/sdd -d removable -n standby,8 -S on -o on -a \
-m root -M exec /usr/share/smartmontools/smartd-runner \
-r 194 -R 5 -R 183 -R 187 -s L/../../7/06
/dev/sde -d removable -n standby,8 -S on -o on -a \
-m root -M exec /usr/share/smartmontools/smartd-runner \
-r 194 -R 5 -R 183 -R 187 -s L/../../6/01
您可以通过任何方便的方式引用各个设备;例如,/dev/sda
我可以使用 ,而不是使用/dev/disk/by-id/wwn-0x5000c5001fc90b93
,它将跟踪同一磁盘,无论其如何连接。