NAS硬盘监控快速上手:Scrutiny部署与避坑
发布时间:2026/9/20 5:18:46 作者:尧图编辑部 阅读量:1,286

NAS硬盘监控快速上手Scrutiny部署与避坑【免费下载链接】scrutinyHard Drive S.M.A.R.T Monitoring, Historical Trends Real World Failure Thresholds项目地址: https://gitcode.com/GitHub_Trending/sc/scrutiny 深夜掉盘S.M.A.R.T早有预兆凌晨两点NAS 的 RAID 掉了一块盘重建要跑 36 小时。其实这块盘的重映射扇区数已经悄悄涨了两周——这件事本可以提前发现。Scrutiny 是一个开源的硬盘健康监控工具把 S.M.A.R.T 数据搬进 Web 仪表板。比命令行 smartd它多做了三件事指标存历史趋势、阈值按真实故障率校准、盘快坏之前先给你发消息。 5分钟跑起来一条Docker命令最短路径就一条omnibus 镜像。一个容器里 Web 前端、API、采集器、InfluxDB 全齐不用单独装数据库。docker run -d --name scrutiny -p 8080:8080 -p 8086:8086 \ -v ./scrutiny:/opt/scrutiny/config -v ./influxdb2:/opt/scrutiny/influxdb \ -v /run/udev:/run/udev:ro --cap-add SYS_RAWIO \ --device/dev/sda --device/dev/sdb \ ghcr.io/analogj/scrutiny:master-omnibus三个硬要求挂载/run/udev、加--cap-add SYS_RAWIO、用--device把要监控的盘逐一传进容器缺一个 S.M.A.R.T 都读不到。NVMe 盘记得再加一个--cap-add SYS_ADMIN采集频率用环境变量COLLECTOR_CRON_SCHEDULE改默认每天零点一次。浏览器打开http://localhost:8080。omnibus 启动时采集器已经跑过一轮仪表板上就是本机所有硬盘的当前状态群晖、Unraid 或其他环境怎么跑群晖、Unraid、TrueNAS 这些平台去 docs/ 里找对应平台的安装文档只是启动容器的方式不同配置和用法与上文一致。多台机器一起管就用 hub/spoke 模式每台机器多挂一个 collector 容器数据全部上报给同一个 Web 和 InfluxDB。⚙️ 让它真正管住你的盘设备识别不了怎么办先在宿主机跑smartctl --scan容器里看到的盘永远不会比宿主机多。RAID 控制器最容易误判设备类型这时在 collector.yaml 的devices块里手动指定比如给/dev/sda加上type: sat不想监控的盘加一行ignore: true就行写法见collector.yaml 示例。通知接入方式对比硬盘健康监控只算前半段告警能送到你眼前才算闭环。所有通知都是往 scrutiny.yaml 的notify.urls里填一行 URL常见通道通道配置要点邮件smtp:// 格式SMTP 账号密码填进 URL收件人写在 toAddresses 参数Discorddiscord://tokenwebhookid两段直接抄自 webhook 页面Slackslack://token-a/token-b/token-c 三段 token 拼起来Telegramtelegram://tokenbotidchannels 参数指定频道Webhook / 脚本任意 https:// URLscript:// 可调本地脚本数据走环境变量配完发一条空测试就能验证链路curl -X POST http://localhost:8080/api/health/notify。阈值到底该设多少Scrutiny 内置阈值表不是抄厂商的而是按真实世界的故障数据重新标定的——厂商阈值经常是盘已经死了才报警而你要的是几个月前。日常真正要盯的就两项重映射扇区数#5坏扇区被替换的总数只要非零且在涨就该准备替换盘了这是最可靠的早期信号。当前待映射扇区#197读不出来、等着重分配的扇区数出现就先用备份兜底再谈其他。每个指标都标注了 critical 等级元数据放在后端 thresholds 包里打开就能核对哪些项被重点加权。单指标阈值目前还在预览阶段配置里的 limits 块是注释掉的现阶段默认值加看趋势就是最优解别急着改数字。跑上几周之后点进任意一块盘能看到每个指标的历史曲线#5 的走向一目了然 几个容易踩的坑症状仪表板一片空白一块盘都没有。原因采集器按天调度第一轮数据还没落库。解法手动触发一次采集docker exec scrutiny /opt/scrutiny/bin/scrutiny-collector-metrics run。症状机械硬盘都识别了NVMe 就是不出来。原因NVMe 只给 SYS_RAWIO 不够。解法容器再加一个--cap-add SYS_ADMIN我当年也是在这里卡住的。症状RAID 虚拟盘识别出来了S.M.A.R.T 数据却残缺。原因--scan判错了设备类型Docker 下还要把虚拟盘透传进容器。解法collector.yaml 里写明类型MegaRAID 要写成megaraid,14到megaraid,21逐个列出。给主NAS挂上Scrutiny下次盘出问题你会在数据丢之前先收到消息。【免费下载链接】scrutinyHard Drive S.M.A.R.T Monitoring, Historical Trends Real World Failure Thresholds项目地址: https://gitcode.com/GitHub_Trending/sc/scrutiny创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考