The smartmontools package contains two utility programs (smartctl and smartd) to control and monitor storage systems using the Self-Monitoring, Analysis and Reporting Technology System (SMART) built into most modern ATA/SATA, SCSI/SAS and NVMe disks. In many cases, these utilities will provide advanced warning of disk degradation and failure. Smartmontools was originally derived from the Linux smartsuite package and actually supports ATA/SATA, SCSI/SAS and NVMe disks and also SCSI/SAS tape devices. It should run on any modern Linux, FreeBSD, NetBSD, OpenBSD, Darwin (macOS), Solaris, Windows, Cygwin, OS/2, eComStation or QNX system. Smartmontools can also be run from one of many different Live CDs/DVDs.

What's New

  • smartctl: New option '--json=y[c]' selects YAML output.
  • smartctl '-i': Prints ATA TRIM and Zoned Device capabilities.
  • smartctl '-j': Fixed 'scsi_grown_defect_list' value.
  • smartctl '-a': Prints SCSI 'Accumulated power on time'.
  • smartctl '-n POWERMODE': SCSI support.
  • smartctl '-s standby,now' and '-s standby,off': SCSI support.
  • smartctl '-c': NVMe 1.4 additions.
  • smartd: Support for staggered self-tests.
  • smartd: No longer writes attribute log if no attributes were read
  • due to standby mode or other error.
  • smartd: Now resolves symlinks before device names are checked for duplicates.
  • smartd: Fixed SMARTD_DEVICETYPE environment variable if DEVICESCAN is
  • used without '-d TYPE'.
  • ATA: Device type '-d jmb39x-q,N' for JMB39x protocol variant used by
  • some QNAP NAS devices.
  • ATA: Device type '-d jms56x,N' for JMS562 USB to SATA RAID bridges.
  • SCSI: Improved heuristics for log subpages of new and very old disks.
  • NVMe: Log transfer size limited to avoid device or kernel crashes.
  • NVMEe/USB: Device type '-d sntrealtek' for Realtek RTL9210 USB to
  • NVMe bridges.
  • update-smart-drivedb: New option '--branch X.Y'.
  • HDD, SSD and USB additions to drive database.
  • Dropped support for pre-C99 snprintf().
  • configure: Dropped option '--without-working-snprintf'.
  • configure: Fixed '-fstack-protector*' detection.
  • Linux: Various fixes of smartd.service file.
  • Darwin: NVMe log support.
  • FreeBSD: Device scan does no longer include T_ENCLOSURE devices.
  • NetBSD: Fixed timeout handling.
  • NetBSD big endian: Fixed ATA register handling.
  • OpenBSD: Fixed timeout handling.
  • Windows: Dropped backward compatibility fixes for very old compilers.