You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 14.04服务器smartctl自动监控:检查、告警与配置方案

Ubuntu 14.04 SMART监控全指南

针对你提出的一系列SMART监控相关问题,我来逐一拆解解答,这些都是服务器运维中保障存储健康的关键操作:

1. Ubuntu 14.04服务器默认会自动执行smartctl监控吗?

答案是不会。Ubuntu 14.04默认没有启用定期的SMART自动监控,你需要手动配置smartd(smartmontools套件中的守护进程)来实现自动检测、定期测试和告警。

2. 如何验证SMART监控是否正常运行?

要确认监控是否在正常工作,可以从这几个维度检查:

  • 检查smartd服务状态:运行命令 sudo service smartd status,如果输出显示running,说明服务正在运行;如果是stopped,则服务未启动。
  • 查看smartd运行日志:Ubuntu 14.04的日志存在/var/log/syslog中,用命令 grep smartd /var/log/syslog 过滤相关日志,你能看到设备检测记录、属性变化提示或者测试完成的信息,比如类似 Device: /dev/sda, SMART Prefailure Attribute: 1 Raw_Read_Error_Rate changed from 100 to 99 的条目,这说明监控在工作。
  • 确认测试调度配置:虽然 sudo smartctl -a /dev/sda 不直接显示系统的测试调度,但你可以查看smartd的核心配置文件 /etc/smartd.conf,里面定义了针对每个设备的测试计划和告警规则;另外,sudo smartctl -c /dev/sda 可以查看设备本身支持的测试类型和默认自测试周期,但这是设备硬件层面的设置,系统级的调度还是以smartd.conf为准。
  • 手动触发测试验证:运行 sudo smartctl -t short /dev/sda 触发一次短自测试(通常几分钟完成),之后用 sudo smartctl -l selftest /dev/sda 查看测试结果,如果能看到本次测试的记录,说明SMART功能和smartd的基础工作流程是正常的。

3. 如何确保出现问题时收到邮件告警?

要实现故障邮件告警,需要完成两部分配置:

  • 配置smartd的邮件通知规则:编辑 /etc/smartd.conf,找到默认的DEVICESCAN行(或者针对特定设备的配置),修改为带邮件参数的配置。比如:
    DEVICESCAN -m your-alert-email@example.com -M exec /usr/share/smartmontools/smartd-runner
    
    其中-m后面填写你的收件邮箱,-M exec指定使用系统自带的脚本发送邮件。如果只针对单个设备(比如/dev/sda),可以写:
    /dev/sda -m your-alert-email@example.com -M daily
    
    -M daily表示每天最多发送一次同类型告警,避免邮件轰炸。
  • 确保系统邮件服务正常运行:Ubuntu 14.04默认没有预装邮件服务,你需要安装postfix或者sendmail。以安装postfix为例:
    sudo apt-get update && sudo apt-get install postfix
    
    安装过程中选择"Internet Site",设置服务器的主机名作为邮件域名即可。安装完成后,测试邮件发送:
    echo "SMART告警测试邮件" | mail -s "SMART Test Alert" your-alert-email@example.com
    
    如果能收到这封测试邮件,说明邮件服务配置正常。

4. Ubuntu环境下简单配置SMART监控的方法

既然Ubuntu 14.04默认未启用,那配置步骤非常直接:

  • 安装smartmontools套件:
    sudo apt-get update && sudo apt-get install smartmontools
    
  • 配置smartd规则:编辑 /etc/smartd.conf,注释掉默认的DEVICESCAN行(如果存在),或者修改为符合你需求的配置。比如要启用全设备扫描+邮件告警+定期测试,可以写:
    DEVICESCAN -m your-alert-email@example.com -s (S/../.././01|L/../../7/02)
    
    这里S代表短测试,每天凌晨1点执行;L代表长测试,每周日凌晨2点执行,时间格式为(测试类型/日/月/周/时)。
  • 启动smartd并设置开机自启:
    sudo service smartd start
    sudo update-rc.d smartd defaults
    

5. 较新Ubuntu LTS版本中smartctl默认设置的变化

在Ubuntu 18.04及后续的LTS版本中,SMART监控的默认配置有不少优化:

  • 默认启用smartd:安装smartmontools后,smartd服务会自动启动并设置为开机自启,不需要手动执行启动和自启配置命令。
  • 简化的默认配置:默认的/etc/smartd.conf已经包含DEVICESCAN行,并且启用了基础告警规则,你只需要添加邮件地址就能快速启用告警。
  • systemd集成优化:改用systemctl管理服务,比如用 sudo systemctl status smartd 查看状态,journalctl -u smartd 查看日志,比Ubuntu 14.04的sysvinit更便捷。
  • 默认定期测试:部分新版本中,默认配置已经包含了定期短测试和长测试的调度,无需手动添加测试计划。
  • 邮件通知更易用:默认集成了更完善的邮件发送脚本,减少了额外配置的步骤。

内容的提问来源于stack exchange,提问作者jdpipe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 03:25:03