🔍 Scrutiny 是什么?
Scrutiny 是一个专注于硬盘健康状况的开源监控工具。你可以把它想象成一个为硬盘准备的“健康监测中心”,它通过读取和分析硬盘的 S.M.A.R.T. 数据,为你提供一个清晰、美观的 Web 界面,让你能实时掌握每一块硬盘的状态、性能和潜在风险。
它的核心亮点是:
- 专业的数据分析:深入分析 S.M.A.R.T. 属性,不仅看当前值,还能追踪历史趋势,帮你判断硬盘是正常老化还是即将故障。
- 智能预警系统:可以为不同的硬盘类型(如ATA、NVMe)设置告警阈值。一旦发现异常(比如温度过高、坏道增多),它能及时发出警报,让你有机会在数据丢失前采取行动。
- 美观的可视化界面:它内置的仪表盘非常直观,可以一目了然地看到所有硬盘的健康状态概览,并支持深入查看每一块硬盘的详细报告和历史图表。
- 灵活的部署方式:支持 Docker 一键部署,也支持在各种操作系统上手动安装,可以轻松实现多台主机的集中监控。
🐳 Docker 部署 Scrutiny(一体化模式)
你希望用 Docker 部署,这是最快、最省心的方式。官方推荐使用“一体化”(Omnibus)Docker 镜像,它把 Web 界面和后端数据收集都打包在了一个容器里,非常适合个人或家庭服务器使用。
1. 准备工作
在你的 Linux 服务器上,确保已经安装了 docker 和 docker-compose。
2. 创建 docker-compose.yml 文件
在你喜欢的目录下(例如 ~/scrutiny)创建一个名为 docker-compose.yml 的文件,并写入以下内容:
version: '3.5'
services:
scrutiny:
container_name: scrutiny
image: ghcr.io/analogj/scrutiny:master-omnibus
cap_add:
- SYS_RAWIO # 获取机械硬盘的S.M.A.R.T 信息,默认即可
- SYS_ADMIN # 获取NVMe硬盘的S.M.A.R.T 信息,没有可以删除
ports:
- "8183:8080" # webapp
- "8184:8086" # influxDB admin(可以不映射)
volumes:
- /run/udev:/run/udev:ro
- ./config:/opt/scrutiny/config
- ./influxdb:/opt/scrutiny/influxdb
devices:
- "/dev/sda"
- "/dev/sdb"
- "/dev/sdc"
- "/dev/sdd"
- "/dev/sde"配置关键点说明:
ports: 将容器的8080端口映射到宿主机的8183端口(你可以修改左侧端口避免冲突)。volumes: 挂载了主机的udev信息,这是容器正确识别你硬盘设备的关键。同时,也挂载了配置和数据目录到本地,方便备份和修改。devices: 这一步非常关键!你需要在这里列出所有想要监控的硬盘设备。把/dev/sda、/dev/sdb替换成你机器上实际的设备路径(可以通过lsblk命令查看)。cap_add: 添加SYS_RAWIO能力,赋予容器读取硬盘 SMART 数据所需的权限。environment: 设置环境变量,让这个容器同时运行 Web 服务和数据收集器(Collector)。
3. 启动服务
在 docker-compose.yml 文件所在的目录下,运行以下命令来启动服务:
docker-compose up -d4. 访问 Web 界面
服务启动后,在浏览器里打开 http://<你的Linux服务器IP>:8183(如果你修改了端口,请使用对应的端口)。稍等片刻(数据收集需要点时间),你就能看到一个漂亮的 Scrutiny 仪表盘了。
界面加载后,你会看到所有被识别到的硬盘概览,绿色代表健康,黄色或红色则代表有需要关注的异常。点击任意一块硬盘,就能进入详情页,查看该硬盘完整的 S.M.A.R.T. 属性数据、温度变化曲线和历史故障记录。如果硬盘真的出了问题,这里就是第一手的“诊断报告”。

5 如何实现 Scrutiny 汉化
获取汉化文件
你可以从以下网盘链接下载由用户“我是笨蛋小扁担”制作的汉化包:- 链接: https://pan.baidu.com/s/1djpIcCJB2XAClQw1Q8miEg (提取码:
cnfb)
- 链接: https://pan.baidu.com/s/1djpIcCJB2XAClQw1Q8miEg (提取码:
在 Docker 部署中应用汉化
- 准备目录:在与你 Scrutiny 容器映射的
config、data目录同级的位置,创建一个名为web的新目录。 - 放置文件:将下载的汉化压缩包内的所有文件解压到刚刚创建的
web目录中。 修改 Docker Compose 配置:在你原来的
docker-compose.yml文件中,为scrutiny服务增加一个卷(volume)映射,将本地的web目录挂载到容器内的/opt/scrutiny/web。添加的配置行如下:yaml
version: '3.5' services: scrutiny: container_name: scrutiny image: ghcr.io/analogj/scrutiny:master-omnibus cap_add: - SYS_RAWIO # 获取机械硬盘的S.M.A.R.T 信息,默认即可 - SYS_ADMIN # 获取NVMe硬盘的S.M.A.R.T 信息,没有可以删除 ports: - "8183:8080" # webapp - "8184:8086" # influxDB admin(可以不映射) volumes: - /run/udev:/run/udev:ro - ./config:/opt/scrutiny/config - ./influxdb:/opt/scrutiny/influxdb - ./web:/opt/scrutiny/web # 👈 新增这一行 devices: - "/dev/sda" - "/dev/sdb" - "/dev/sdc" - "/dev/sdd" - "/dev/sde"- 重建容器:保存文件后,在
docker-compose.yml所在目录下执行docker-compose down和docker-compose up -d重新创建容器。

- 准备目录:在与你 Scrutiny 容器映射的
评论 (0)