Estimated reading time: 10 Minuten
Scrutiny ist ein spezialisiertes Monitoring-Tool für Festplatten, das dir ein zentrales Web-Dashboard, historische S.M.A.R.T.-Trends, temperaturbasierte Überwachung und flexible Alarmierung per Webhooks bietet. Damit erkennst du schleichende Festplattenprobleme frühzeitig und reduzierst das Risiko eines plötzlichen Datenverlusts in deinem Home- oder Lab-Setup deutlich.
Für eine detaillierte Anleitung und Erklärung aller Konfigurationsmöglichkeiten empfehle ich das unten verlinkte YouTube-Video. In diesem Video wird ausführlich auf jede einzelne Einstellung eingegangen, sodass du eine umfassende Anleitung zur genauen Einrichtung erhältst. Eventuellen Code aus dem Video findest du in diesem Beitrag, so dass du ihn direkt nutzen kannst, ohne abtippen zu müssen.
Dieser Blogbeitrag inklusive Video ist Teil einer Serie, in der wir unseren eigenen Homeserver erstellen und einrichten. Wir fangen bei den Basics an, wie einer Ubuntu-VM-Installation mit Docker, und machen dann weiter mit der Konfiguration einer eigenen Domain, Sicherheitsvorkehrungen und vor allem mit jeder Menge coolen und nützlichen selbstgehosteten Diensten. Egal ob Medienserver wie Plex oder Jellyfin oder Dokumentenmanagement wie Paperless-NGX. Wir bauen gemeinsam das Setup auf, das ihr sehen möchtet. Selbst Themen wie Single Sign-On (SSO) gehen wir gemeinsam an.
Was ist Scrutiny?
Scrutiny ist eine Weboberfläche für die S.M.A.R.T.-Überwachung von Festplatten, die auf dem bestehenden smartd-Ökosystem aufsetzt. Es kombiniert Hersteller-S.M.A.R.T.-Daten mit realen Ausfallraten, um dir eine praxisnahe Einschätzung des Zustands deiner HDDs und SSDs zu geben.
- Fokus auf kritische Kennzahlen wie Reallocated Sectors, Pending Sectors und Temperatur.
- Offene, MIT-lizenzierte Software, geschrieben in Go und für den Selbsthost-Einsatz optimiert.

S.M.A.R.T. kurz erklärt
S.M.A.R.T. steht für „Self-Monitoring, Analysis and Reporting Technology“ und ist in die meisten modernen Festplatten und SSDs integriert. Ziel ist es, die Zuverlässigkeit einer Platte zu überwachen und drohende Ausfälle möglichst früh zu erkennen.
- Typische Metriken sind z.B. Lesefehler, Reallocated Sectors, Temperatur und Start-/Stopp-Zyklen.
- smartd (aus dem smartmontools-Paket) ist der Daemon, der diese Werte ausliest; Scrutiny setzt genau darauf auf, anstatt das Rad neu zu erfinden.
Kernfunktionen von Scrutiny
Scrutiny konzentriert sich bewusst auf einige wenige, aber dafür sehr praxisrelevante Features.
- Web-Dashboard mit Fokus auf kritische S.M.A.R.T.-Metriken für alle angeschlossenen Laufwerke.
- Automatische Erkennung aller verbundenen Festplatten, inklusive mehrerer Controller oder Server.
- Historische Trendverfolgung für S.M.A.R.T.-Werte und Temperaturentwicklung über die Zeit.
- Individuelle Schwellwerte, die sich an realen Ausfallraten orientieren (z.B. Backblaze-Daten).
- Konfigurierbare Alarme und Benachrichtigungen via Webhooks, z.B. an Home-Assistant, Discord oder eigene Webhooks.
- Bereitstellung als Docker-Images (Web-UI und Collector getrennt), zusätzlich auch manuell installierbar.
Architektur: Web & Collector
Scrutiny besteht aus zwei Hauptkomponenten, die du flexibel aufteilen kannst.
- Web-Container (ghcr.io/analogj/scrutiny:master-web): Enthält Web UI und API, läuft typischerweise auf einem zentralen Server oder NAS.
- Collector-Container (ghcr.io/analogj/scrutiny:master-collector): Läuft auf jedem Host mit Festplatten, liest über smartctl die S.M.A.R.T.-Daten und sendet sie per HTTP an den Web-Container.
Damit eignet sich Scrutiny ideal für Umgebungen mit mehreren Hosts (z.B. Proxmox + Storage-Server + Backup-NAS), ohne dass du überall eigene Dashboards pflegen musst.
Web-Dashboard im Detail
Das Web-Dashboard ist das Herzstück von Scrutiny und konzentriert sich bewusst auf die Metriken, die im Alltag wirklich zählen.
- Übersichtsseite mit allen Platten inklusive Health-Status, Temperatur und Anzahl kritischer Attribute.
- Detailansichten pro Laufwerk, z.B. mit S.M.A.R.T.-Tabellen, Rohwerten und Verlauf einzelner Attribute.
- Historische Charts, um Trends zu erkennen, etwa langsam steigende Reallocated Sectors oder eine schleichend steigende Temperatur im Server.
Damit bekommst du ein klares Bild, ob eine Platte stabil läuft, grenzwertig wird oder bereits in einem kritischen Zustand ist.
Historische Trends & reale Ausfallschwellen
Ein Alleinstellungsmerkmal von Scrutiny ist die Kombination aus Herstellerangaben und echten Ausfallstatistiken.
- Scrutiny berücksichtigt für seine Schwellenwerte reale Failure-Daten, z.B. aus Backblaze-Ausfallstatistiken.
- Du siehst nicht nur „Rohdaten“, sondern bekommst eine Einschätzung, wie kritisch ein bestimmter Wert in der Praxis ist.
Diese Verknüpfung hilft dir, nicht bei jedem minimalen S.M.A.R.T.-Ausschlag in Panik zu geraten, aber gleichzeitig echte Warnsignale frühzeitig ernst zu nehmen.
Alarme & Webhook-Integration
Für automatisierte Umgebungen wie dein Homelab sind Alarme oft wichtiger als das reine Dashboard.
- Scrutiny kann bei Schwellwertüberschreitungen Webhooks aufrufen, z.B. an Home Assistant, Node-RED oder individuelle Automations-Endpoints.
- So kannst du z.B. bei kritischem Zustand einer Platte automatisch ein Backup-Playbook starten, Benachrichtigungen in Slack/Discord senden oder einen Proxmox-Knoten in einen Wartungsmodus versetzen.
Durch diese Integration wird Scrutiny Teil deiner gesamten Monitoring- und Alerting-Strategie, statt nur ein passives Dashboard zu sein.
Typisches Homelab-Szenario
Stell dir vor, du betreibst einen Proxmox-Host mit mehreren HDDs und SSDs für VMs und Container, dazu ein NAS für Backups.
- Auf jedem Host läuft ein Scrutiny-Collector-Container mit Zugriff auf die lokalen /dev-Devices.
- Alle Collector senden ihre S.M.A.R.T.-Daten an einen zentralen Scrutiny-Web-Container, der auf deinem NAS oder einem Management-Server läuft.
- Du hast damit ein einheitliches Dashboard über die gesamte Storage-Landschaft und erkennst Tendenzen wie „HDD im Backup-NAS wird langsam kritisch“ frühzeitig.
Gerade in Kombination mit ZFS oder RAID schützt dich das nicht vor allen Problemen, aber es gibt dir eine deutlich bessere Grundlage für Entscheidungen zum Plattentausch.
Beispiele für typische S.M.A.R.T.-Signale
Scrutiny hilft dir, typische Problem-Muster schnell zu identifizieren.
- Platten, bei denen die Anzahl „Reallocated Sectors“ über Wochen langsam steigt, werden im Dashboard auffällig und sollten zeitnah ersetzt werden.
- Auffällig hohe Temperaturen (z.B. dauerhaft > 50 °C) werden angezeigt, sodass du Kühlungsprobleme im Gehäuse oder Rack erkennen kannst.
- Wenn eine SSD plötzlich viele Lesefehler meldet, kannst du rechtzeitig Backups priorisieren und Workloads umziehen, bevor es kritisch wird.
Der Mehrwert liegt darin, Trends sichtbar zu machen, statt nur auf einen spontanen Totalausfall zu reagieren.
Betrieb auf NAS-Systemen (TrueNAS, Synology & Co.)
Viele Nutzer setzen Scrutiny direkt auf NAS-Systemen ein, um die internen und ggf. externen Laufwerke zentral zu überwachen.
- Auf TrueNAS Scale kannst du Scrutiny als Docker-Compose-Projekt in der Apps-/Projects-Sektion starten und Volumes für Config, Datenbank und /run/udev konfigurieren.
- Auf Synology NAS gibt es Anleitungen, wie du Scrutiny im Container Manager mit einem dedizierten Projektordner und den nötigen Device-Mounts betreibst.
So ergänzt Scrutiny die oft eher rudimentären, herstellerseitigen S.M.A.R.T.-Ansichten deiner NAS-Oberfläche um ein deutlich mächtigeres Dashboard.
Logging, Debugging & Feintuning
Für den produktiven Betrieb möchtest du Scrutiny in deine Log- und Monitoring-Strategie einbinden.
- Über Umgebungsvariablen wie
DEBUG=trueundSCRUTINY_LOG_FILEkannst du detailliertes Logging für das Web-Backend aktivieren. - Alternativ setzt du Log-Level und Log-Datei direkt in der scrutiny.yaml, z.B.
log.level: DEBUGundlog.file: '/tmp/web.log'.
Damit kannst du Probleme bei der Device-Erkennung, smartctl-Aufrufen oder Collector-Kommunikation zielgerichtet analysieren.
Sicherheit & Updates
Da Scrutiny direkt auf Block-Devices zugreift, ist eine saubere Container-Isolation wichtig.
- Gib den Containern nur die Devices frei, die sie wirklich benötigen, und begrenze Capabilities möglichst auf
SYS_RAWIO. - Aktualisiere regelmäßig auf neue Image-Tags aus der GitHub Container Registry (z.B. master-web, master-collector), um Bugfixes & Sicherheitsupdates zu erhalten.
Für produktive NAS-Umgebungen lohnt sich ein Testlauf in einer Staging- oder Lab-Instanz, bevor du ein Update flächendeckend ausrollst.
Installation mit Docker
Der einfachste Weg führt über Docker bzw. Docker Compose, da die offiziellen Images alle benötigten Abhängigkeiten mitbringen.
- Scrutiny-Web startest du typischerweise mit Volume-Mount für die Konfiguration und einem Port-Mapping auf 8080.
- Der Collector benötigt Zugriff auf /run/udev (read-only), SYS_RAWIO-Capabilities und die einzelnen /dev/sdX-Devices, damit smartctl die Platten direkt lesen kann.
Erstelle eine Datei namens docker-compose-scrutiny.yml. Hier ist ein bewährtes Template basierend auf dem offiziellen Repository:
services:
scrutiny:
image: ghcr.io/analogj/scrutiny:master-omnibus
container_name: scrutiny
restart: always
cap_add:
- SYS_RAWIO
networks:
- sascha
environment:
- TZ=Europe/Berlin
ports:
- "8080:8080"
volumes:
- /run/udev:/run/udev:ro
- /dev/disk:/dev/disk:ro
- /mnt/cache/appdata/monitoring/scrutiny/config/:/opt/scrutiny/config:rw
- /mnt/cache/appdata/monitoring/scrutiny/influxdb/:/opt/scrutiny/influxdb:rw
healthcheck:
test: ["CMD", "curl", "--fail", "http://localhost:8080/api/health"]
interval: 1m
timeout: 10s
retries: 3
networks:
sascha:
external: true
Öffne dein Terminal und du kannst die Services dann ganz einfach mit folgendem Befehl starten (der Name muss natürlich angepasst werden):
docker compose -f "docker-compose-scrutiny.yml" up -d
Nach ein paar Sekunden kannst du über https://<deineIP>:8080 auf dein Dashboard zugreifen.
Diese Docker-Compose-Datei konfiguriert Scrutiny, ein grafisches Dashboard zur Überwachung des Gesundheitszustands (S.M.A.R.T.-Werte) deiner Festplatten.
Der Dienst
Es wird die „Omnibus“-Variante von Scrutiny verwendet, die alle notwendigen Komponenten (Web-Interface, Datenbank und Sammler) in einem einzigen Container vereint. Der Container ist so eingestellt, dass er nach einem Neustart oder Absturz immer automatisch wieder hochfährt.
Hardware-Zugriff und Sicherheit
Damit Scrutiny die Festplattenwerte überhaupt auslesen kann, erhält der Container erweiterte Systemrechte (SYS_RAWIO). Zudem wird dem Container Zugriff auf die Geräte-Informationen des Host-Systems (/dev/disk und /run/udev) gewährt, allerdings nur im Lesemodus, um die Sicherheit zu wahren.
Netzwerk und Erreichbarkeit
- Netzwerk: Der Dienst tritt dem externen Netzwerk sascha bei.
- Port: Das Dashboard ist über den Port 8080 im Browser erreichbar.
- Gesundheitscheck: Einmal pro Minute prüft das System intern, ob die Programmschnittstelle (API) noch antwortet.
Datenspeicherung
Die Konfiguration und die gesammelten Festplattendaten (in einer InfluxDB) werden dauerhaft auf deinem Server im Verzeichnis /mnt/cache/appdata/monitoring/scrutiny/ gespeichert. So bleiben deine historischen Statistiken und Einstellungen auch bei einem Update des Containers erhalten.
Konfiguration: scrutiny.yaml & collector.yaml
Scrutiny sucht seine YAML-Konfiguration standardmäßig in /opt/scrutiny/config. Dort kannst du mit scrutiny.yaml (Web/API) und collector.yaml (Collector) das Verhalten sehr fein steuern.
- In
scrutiny.yamllegst du z.B. Log-Level, Log-Dateien, Datenbank-Backend und UI-spezifische Einstellungen fest. Dort legst du auch deine Benachrichtigungsdienste fest. Dazu nutzt Scrutiny das Tool shoutrrr. Schau im offiziellen Repository nach der Beispieldatei fürscrutiny.yaml. - In
collector.yamldefinierst du u. a. welche Devices überwacht werden, ob Auto-Discovery aktiv ist und wie oft S.M.A.R.T.-Werte erfasst werden.
Beide Dateien sind optional – ohne Config läuft Scrutiny mit sinnvollen Defaults, was den Einstieg erleichtert.
Umsetzung im YouTube-Video
Fazit: Warum du Scrutiny einsetzen solltest
Scrutiny bringt dir ein fokussiertes, aber extrem wirkungsvolles Tool an die Hand, um die Gesundheit deiner Festplatten und SSDs dauerhaft im Blick zu behalten. Durch das Zusammenspiel aus S.M.A.R.T.-Überwachung, historischen Trends, realitätsnahen Ausfallschwellen und flexibler Alarmierung wird deine Storage-Landschaft deutlich transparenter und planbarer.
Gerade im Homelab, bei Proxmox- oder NAS-Setups mit vielen Laufwerken, ist Scrutiny ein idealer Baustein, um Datenverlust vorzubeugen, rechtzeitig Platten zu ersetzen und Cooling- oder Vibrationsprobleme schnell zu erkennen. Mit den offiziellen Docker-Images, klaren Konfigurationsdateien und der smartd-Integration integriert sich das Tool gut in bestehende Umgebungen und bleibt trotz mächtiger Funktionen angenehm schlank.
Nützliche Links auf einen Blick
- Scrutiny GitHub-Repository (Code, Doku, Issues): https://github.com/AnalogJ/scrutiny
- Linux-Links-Artikel zu Scrutiny (Feature-Überblick): https://www.linuxlinks.com/scrutiny-webui-smartd-smart-monitoring/
- Anleitung Scrutiny unter TrueNAS Scale: https://spin.atomicobject.com/scrutiny-docker-truenas-scale/
- Anleitung Scrutiny auf Synology NAS (Container Manager): https://drfrankenstein.co.uk/scrutiny-in-container-manager-on-a-synology-nas/
- YunoHost-App-Seite zu Scrutiny (Featureliste): https://apps.yunohost.org/app/scrutiny
0 Kommentare