Neues Modul services/platform_info.py prüft systemd-detect-virt einmalig
beim Start (statt pro Request). SMART-Abfragen werden in Containern
übersprungen, da /dev/sdX dort meist nicht verfügbar ist.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
shutil.which() reicht nicht: auf privilegierten LXC-Containern ist
zpool installiert, aber /dev/zfs fehlt → Befehl schlägt fehl.
_probe_zfs() führt zpool list einmal aus und wertet den Exit-Code aus.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- ZFS_AVAILABLE Flag beim Import gesetzt (shutil.which)
- FileNotFoundError in run_command: ERROR → DEBUG
- list_pools/get_pool_status/list_datasets/list_snapshots: frühzeitiger
Return wenn kein zpool vorhanden → keine nutzlosen Subprocess-Aufrufe
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
-d 1 begrenzte auf direkte Snapshots des Datasets, tank/share wurde
nicht eingeschlossen. -r (recursive) liefert alle Sub-Datasets.
Cache-Key jetzt dataset-spezifisch um Kollisionen zu vermeiden.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
CAP und FRAG wurden um eine Spalte verschoben gelesen (DEDUP statt CAP,
CAP statt FRAG). Korrekt: FRAG=parts[6], CAP=parts[7]. Prozentzeichen
ergänzt, da -p die Werte ohne % liefert.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>