
mdhiggins/smartmontools基于Debian系统的Docker容器,集成smarttools(硬盘SMART检测工具)、mailutils(邮件处理工具)和ssmtp(邮件传输客户端),核心功能为每日自动执行硬盘SMART健康状态检查,并通过配置的邮件服务将检查报告发送至指定***。
| 参数名 | 说明 | 是否必填 |
|---|---|---|
MAIL | 接收SMART检查报告的目标***地址(如***) | 是 |
| 挂载路径(容器内) | 宿主机路径示例 | 说明 |
|---|---|---|
/etc/smartd.conf | /opt/appdata/smartmontools/smartd.conf | smartd服务配置文件,定义检查规则(如检测频率、报告内容等) |
/etc/ssmtp | /opt/appdata/smartmontools/ssmtp | ssmtp配置目录,包含邮件发送所需的SMTP服务器信息(如ssmtp.conf、revaliases文件) |
yamlsmartmontools: image: mdhiggins/smartmontools privileged: true # 需特权模式以访问宿主机硬盘设备 environment: - MAIL=${MAIL} # 接收报告的***地址,建议通过环境变量传入 volumes: - /opt/appdata/smartmontools/smartd.conf:/etc/smartd.conf # 挂载自定义smartd配置 - /opt/appdata/smartmontools/ssmtp:/etc/ssmtp # 挂载ssmtp邮件配置 restart: always # 容器退出后自动重启,确保持续运行
bashdocker run -d \ --name smartmontools \ --privileged \ -e MAIL="***" \ # 替换为实际接收*** -v /opt/appdata/smartmontools/smartd.conf:/etc/smartd.conf \ -v /opt/appdata/smartmontools/ssmtp:/etc/ssmtp \ --restart always \ mdhiggins/smartmontools
/opt/appdata/smartmontools/smartd.conf文件用于定义SMART检查规则,基础配置示例:
conf# 对所有支持SMART的硬盘执行检查,每日凌晨2点运行 /dev/sd[a-z] -a -s (S/../.././02) -m ${MAIL} -M test
-a:启用所有默认检查项。-s (S/../.././02):设置检查时间为每周日凌晨2点(可根据需求调整)。-m:指定接收报告的***(与环境变量MAIL一致)。-M test:首次启动时发送测试邮件,验证配置是否生效。/opt/appdata/smartmontools/ssmtp/ssmtp.conf文件需配置SMTP服务器信息,示例(以Gmail为例):
confroot=*** mailhub=smtp.gmail.com:587 rewriteDomain=gmail.com AuthUser=*** AuthPass=your-app-password # 需使用Gmail应用专用密码(开启2FA时) FromLineOverride=YES UseSTARTTLS=YES
--privileged模式运行,否则无法访问宿主机硬盘设备的SMART接口。docker logs smartmontools)排查配置问题。


manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务