Repository navigation
v0.21.9 — Disk Health & Life Prediction
Disk Health & Life Prediction
New DISK HEALTH section at the top of the IO page showing drive wear, age, and failure prediction.
Zero External Dependencies
- NVMe: Direct
NVME_IOCTL_ADMIN_CMDkernel ioctl — reads the SMART/Health Information Log page directly from the NVMe controller firmware. Nosmartctlornvme-clineeded. - SATA SSD/HDD: Direct
HDIO_DRIVE_CMDkernel ioctl — reads SMART attribute table directly. Nosmartmontoolsneeded. - Smartctl fallback: Uses
smartctl --jsonfor any devices not covered by direct ioctls. - Virtual disk detection: Automatically skips QEMU, VMware, Xen, VirtualBox, Hyper-V virtual disks.
What It Shows
| Field | NVMe | SATA SSD | SATA HDD |
|---|---|---|---|
| Life gauge bar | percentage_used | wear_leveling_count | n/a |
| Health verdict | critical_warning bitmap | realloc + pending sectors | realloc + pending |
| Temperature | NVMe health log | SMART attr 194 | SMART attr 194 |
| Total written | data_units_written | total_LBAs_written | total_LBAs_written |
| Write rate | TB/year from writes/hours | TB/year | TB/year |
| Est. remaining | wear rate extrapolation | wear rate extrapolation | power-on age |
| Available spare | NVMe-specific | n/a | n/a |
| Media errors | NVMe-specific | n/a | n/a |
Life Prediction
Estimated remaining life is computed from actual hardware-reported data:
wear_rate = percentage_used / power_on_hoursremaining_hours = (100 - percentage_used) / wear_rate- Color-coded: green (>1.5y), yellow (6mo-1.5y), red (<6mo)
Health Verdicts
OK → WARN (media errors, realloc sectors) → WORN (>70% used) → CRITICAL (>90% used, spare below threshold) → FAILING (NVMe reliability degraded) → FAIL (SMART health failed)
NVMe Critical Warning Flags
Decodes all 5 NVMe critical_warning bitmap flags:
- Available spare below threshold
- Temperature above critical composite threshold
- Reliability degraded (media/internal errors)
- Media placed in read-only mode (endurance exhausted)
- Volatile memory backup device failed