使用 smartctl 和 smartd 进行测试

使用 smartctl 和 smartd 进行测试

我正在研究设置smartmontools。

我想控制测试的运行时间。我考虑运行:

/usr/sbin/smartctl --test=short /dev/sdX (每周)
/usr/sbin/smartctl --test=long /dev/sdX (每月)

如果发现错误,则发送电子邮件/警报。

1) 我这样说对吗?如果我已经在 cron 中设置了上述内容,我就不需要在后台运行“smartd”守护进程了?

2)如果我运行上述测试并禁用“smartd”,启用离线数据收集有什么好处吗?

3)最后让我感到困扰的是,我看到文档启用/禁用 --smart、--offlineauto 和 --saveauto 的命令在 ATA 规范中被列为已过时。这是否意味着所有这些功能在 ATA 设备上都已过时/无用?

答案1

由于smartd效果很好,我不会依赖自定义脚本。但让我们回答每个问题:

  • 问:如果我已经在 cron 中设置了上述内容,那么我就不需要在后台运行“smartd”守护进程了,这样说对吗? 回覆:虽然从技术上来说是正确的,但你必须发现出现错误:smartctl,本身立即返回退出代码 0。然后您必须解析输出smartctl --all并检查之前的测试运行的退出状态;

  • 问:如果我运行上述测试并禁用“smartd”,启用离线数据收集有什么好处吗? 回覆:可能不会。但是,离线数据收集本身不会导致任何(明显的)性能下降。

  • 问:最后一个让我感到困惑的问题是,我在文档中看到,启用/禁用 --smart、--offlineauto 和 --saveauto 的命令在 ATA 规范中被列为已过时。这是否意味着所有这些功能在 ATA 设备上都已过时/无用? 回覆:虽然标记为“过时”,但我拥有的每个硬盘都支持它们。也就是说,每个磁盘似乎都以不同的(且不一致的)方式实现它们,尤其是在 SMART 属性更新方面。

相关内容